FreeRTOS Posix原理
摘要:FreeRTOS Posix原理 1. FreeRTOS源码原理 FreeRTOS可以创建不同优先级的task,RTOS负责管理这些任务。同时提供了队列、信号等功能,这些功能能够使task再不满足条件时挂起,当运行条件满足时触发运行。 RTOS依据不同的优先级,创建不同任务链表,相同优先级的任务挂在
阅读全文
posted @
2020-06-22 00:09
生活的艺术
阅读(599)
推荐(0)
cmder添加到右键
摘要:1.安装mingw 设置环境变量PATH: D:\MinGW\bin和D:\MinGW\msys\1.0\bin 2.安装cmder 3.右键cmder (1)添加环境变量PATH:D:\cmder_mini (2)管理模式运行终端cmd并输入: Cmder.exe /REGISTER ALL
阅读全文
posted @
2018-09-05 08:02
生活的艺术
阅读(279)
推荐(0)
Makefile模板
摘要:############################################################################### # # Generic Makefile for C/C++ Program # # Description: # The makefile searches in directories for the source files # ...
阅读全文
posted @
2018-09-02 17:13
生活的艺术
阅读(279)
推荐(0)
Linux进程5——实模式和保护模式
摘要:早期的Inter芯片只支持1MB内存,采用实模式,采用16bit地址。后来随着技术进步,出现可以访问更多内存的 保护模式芯片,采用32bit地址。为了保持对前面芯片的兼容,Inter支持这两种模式。当芯片启动时,默认处于实模式, 然后OS控制进入保护模式。 实模式和保护模式的最大区别: 实模式下,程
阅读全文
posted @
2017-08-06 22:56
生活的艺术
阅读(1127)
推荐(1)
Linux进程3——虚拟地址访问
摘要:1.虚拟地址到物理地址 X86芯片访问内存,需要使用MMU功能,实现虚拟地址到线性地址,再到物理地址的访问。 X86的分段机制是强制的,分页机制是可选的。 2.分段机制 X86的虚拟地址,由选择符:偏移值决定。段选择符由CS,SS,DS等组成。CS为代码段选择符,SS为堆栈段选择符, DS为数据段选
阅读全文
posted @
2017-08-06 19:18
生活的艺术
阅读(545)
推荐(0)
Linux进程2——进程加载
摘要:Linux每个可执行程序都具有相同的虚拟地址分配,当OS启动进程时,是如何加载程序呢? 1. 进程结构体 每个进程都具有task_struct结构体,该结构体的mm字段负责对程序内存的虚拟地址映射。 mm中每个vm_area_struct对应可执行程序的段虚拟地址空间,例如.text等。当程序被执行
阅读全文
posted @
2017-08-06 17:31
生活的艺术
阅读(1076)
推荐(0)
Linux进程1——地址空间
摘要:1.进程虚拟内存分配 在Linux系统中,每个进程都具体自己独立的4GB虚拟内存空间,包括3GB的用户空间和1GB内核空间。每个程序被编译后,成为可执行程序, 变量和函数的地址都被分配完成。可执行程序内部被划分为多个区域,包括.text,.data,.bss等区域。 (1).text为代码段,可执行
阅读全文
posted @
2017-08-06 16:22
生活的艺术
阅读(287)
推荐(0)