ucosii--内核的目录结构

来源:互联网 发布:知乎红人 编辑:程序博客网 时间:2024/06/05 15:33

uC---cpu

uC---LIB

uCOS-II

这是内核源码的重要部分

对于这部分代码,我们必须要一行一行的来看,一个全局变量都需要了解的仔细

第二步:自己来看,自己来调试,自己来分析


uC---cpu  :这个文件夹中肯定是关于CPU的,比如两块开发板都是STM32F10XX的开发板一个A  一个B但是A和B是不同厂家出的,如果需要从A移植到B的时候,uC--cpu

下面的东西是不需要动的。

这部分的关于CPU的代码是由谁决定的----------1.ARM公司的人      2.ST公司的人           3.写ucos源码的人  4.我们的人

1.百分八九十的是由ARM公司决定的  contex-m3 只要是这个内核,大部分的代码都会比较相似。

uc---CPU

ARM-COrtex-M3 ----------这部分的代码我们是不需要动的,但是我们需要理解他

cpu.h     移植的时候是不用动的,只要是关于COrtex-m3的内核我     们都可以直接移植

cpu_a.asm

cpu_c.c       -----------这些都是有ARM公司决定的-----这里面都是ARM定好的

cpu-def.h          ---------CPU相关的定义(寄存器 单核双核的定义 )

uC---LIB:  这一部分是相关的库文件   CA

lib_def.h  ---------库相关的一些定义

lib_mem.c        ---------内存操作有关的

lib_mem.h这些是跟硬件无关的,不管什么样 的硬件都是这些库函数

lib_str.c---------字符串相关的函数

lib_str.h




Ports  ---------这个目录下的文件是跟移植相关的代码

这部分是跟硬件有关的(按照字节操作,这一部分  一般都是一些汇编代码)

lib_mem_a.asm 这一部分是硬件相关的库


uCOS-II:

Ports--------------硬件相关的(这部分不好移植)

硬件相关的

OS_cpu.h  Oc_cpu.c  操作系统的内核有关的CPU有关

Source  --------------硬件无关的 

调度相关,互斥锁,队列,信号量,时间管理的,定时器,相关的配置的头文件

操作系统的本质:

操作系统本质-------这部分代码是不需要移植的,但是是操作系统的本质

看代码的时候

1.要时刻知道自己在什么地方,(在讲课的时候需要来回翻动文件)

2.要知道你看的文件在那里,这个文件在那个目录底下,大概知道这个文件作用










原创粉丝点击