- 博客(17)
- 资源 (3)
- 收藏
- 关注
原创 RT-Thread内核学习(认真系列) ---- (5)内存管理
一、概述计算机系统中,变量、中间数据一般存放在 RAM 中,只有在实际使用时才将它们从 RAM 调入到CPU 中进行运算。一些数据需要的内存大小需要在程序运行过程中根据实际情况确定,这就要求系统具有对内存空间进行动态管理的能力,在用户需要一段内存空间时,向系统申请,系统选择一段合适的内存空间分配给用户,用户使用完毕后,再释放回系统,以便系统将该段内存空间回收再利用。RT-Threa...
2019-03-31 16:19:34 2345
原创 RT-Thread内核学习(认真系列) ---- (2)时钟管理
一、概述二、时钟节拍任何操作系统都需要提供一个时钟节拍,以供系统处理所有和时间有关的事件,如线程的延时、线程的时间片轮转调度以及定时器超时等。时钟节拍是特定的周期性中断,这个中断可以看做是系统心跳,中断之间的时间间隔取决于不同的应用,一般是 1ms–100ms,时钟节拍率越快,系统的额外开销就越大,从系统启动开始计数的时钟节拍数称为系统时间。RT-Thread 中,时...
2019-03-31 16:11:14 602
原创 RT-Thread内核学习(认真系列) ---- (4)线程间通信
一、概述二、邮箱RT-Thread 操作系统的邮箱用于线程间通信,特点是开销比较低,效率较高。邮箱中的每一封邮件只能容纳固定的 4 字节内容(针对 32 位处理系统,指针的大小即为 4 个字节,所以一封邮件恰好能够容纳一个指针)。典型的邮箱也称作交换消息,如下图所示,线程或中断服务例程把一封 4 字节长度的邮件发送到邮箱中,而一个或多个线程可以从邮箱中接收这些邮件并进行处理。...
2019-03-30 14:43:04 1524
原创 RT-Thread内核学习(认真系列) ---- (6)中断管理
一、介绍当 CPU 正在处理内部数据时,外界发生了紧急情况,要求 CPU暂停当前的工作转去处理这个 异步事件。处理完毕后,再回到原来被中断的地址,继续原来的工作,这样的过程称为中断。实现这一功能的系统称为 中断系统,申请 CPU 中断的请求源称为 中断源。中断是一种异常,异常是导致处理器脱离正常运行转向执行特殊代码的任何事件,如果不及时进行处理,轻则系统出错,重则会导致系统毁灭性地瘫痪。所以正...
2019-03-30 13:00:37 411
原创 RT-Thread内核学习(认真系列) -- (3)线程间同步
一、概述二、信号量信号量是一种轻型的用于解决线程间同步问题的内核对象,线程可以获取或释放它,从而达到同步或互斥的目的。信号量工作示意图如下图所示,每个信号量对象都有一个信号量值和一个线程等待队列,信号量的值对应了信号量对象的实例数目、资源数目,假如信号量值为 5,则表示共有 5 个信号量实例(资源)可以被使用,当信号量实例数目为零时,再申请该信号量的线程就会被挂起在该信号量的等待...
2019-03-30 08:40:58 507
原创 RT-Thread内核学习(认真系列) -- (1)线程
目录一、概述二、线程的组成2.1、线程代码(入口函数)2.2、线程控制块2.3、线程栈三、线程相关的API3.1、线程的创建3.2、状态的切换四、注意事项与补充4.1、动态创建与静态创建的优缺点比较?4.2、系统滴答时钟频率的选取4.3、线程栈大小分配的小策略4.4、线程栈的数据具体是如何保存的?一、概述线程是RT-Thread的核...
2019-03-29 22:00:43 709
原创 RT-Thread内核学习(认真系列) -- 动态内存配置详解
更新于2019-03-29一、堆一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。所以在局部变量中尽量不要使用大数组,容易造成栈溢出。 2、堆区(heap):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收...
2019-03-28 23:20:54 4408 1
原创 python ----数据分析
1、安装数据分析的三个python库(python3.7版本)pip3.7 install numpy2、numpy 的操作numpy数据类型的取值范围numpy的操作....
2019-03-17 11:25:53 323
原创 python 爬虫学习 ---- 爬取豆瓣数据
最近在学习python爬虫爬取网上的数据,现在就边学边记录下。一、python库1、requests ---- 获取网页内容2、BeautifulSoup ---处理文本使用pip安装python包,在cmd命令行下分别输入(python3.7)pip3.7 install requests pip3.7 install bs4pip3.7 instal...
2019-03-16 09:09:40 1068 1
原创 pip is configured with locations that require TLS/SSL, however the ssl modul........
在win10系统下,想给python安装第三方包,在dos下使用指令(调用CMD,按win+R,然后enter)如下:(其中pymysql为第三方包名)pip install pymysql出现错误:找了很多方法也没解决,但是突然发现pip有好几个版本,主要是考虑python版本的兼容性由于我安装的是python3.7,所以改用命令pip3.7 install...
2019-03-13 23:20:32 30769 5
原创 Python数据结构可视化工具推荐 ------- 更好地理解python的数据结构
推荐一款在线的工具,有利于初学者理解python的数据结构。1、打开Python数据结构可视化工具的在线网址:http://www.pythontutor.com/。2、点击下图框选位置:3、进入后,有两个重要的选项,功能如下:4、选择LiveProgramming Mode,效果如下5、对于VisualExecution的选项,写完代码后,点击该选项,就可...
2019-03-10 11:11:37 1364 1
原创 python 入门笔记
1、format2、 6、bool类型3、字符串 3、1 切片4、math库有很多可以对值操作的方法。5、列表类型(可变类型)注意列表赋值会分为浅复制和深复制。6、元组类型不可变类型的列表7、字典类型8、和C语言一样,比如或运算,前面为真就不用判断后面,python返回的是判断结束的值9、断言(用于调试)10...
2019-03-10 10:48:58 128
人工智能基础(高中版).pdf
2019-07-06
四旋翼STM32F411CCU6的最小系统板设计
2018-02-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人