(六)--C语言嵌入式系统编程之软件架构篇 .pdf
C 语言嵌入式系统编程之软件架构篇 从给定的文件信息中,我们可以生成以下知识点: 1. 模块划分的概念:在软件设计中,模块划分是指将一个大的软件划分为一系列功能独立的部分,以满足系统的需求。在 C 语言中,模块划分主要依据功能进行划分。 2. 模块化程序设计的概念:C 语言模块化程序设计需要理解以下几点:(1)模块即是一个 .c 文件和一个 .h 文件的结合,头文件(.h)中是对于该模块接口的声明;(2)某模块提供给其他模块调用的外部函数及数据需在 .h 文件中冠以 extern 关键字声明;(3)模块内的函数和全局变量需在 .c 文件开头冠以 static 关键字声明;(4)永远不要在 .h 文件中定义变量! 3. 变量声明和定义的区别:变量声明和定义的区别在于定义会产生内存分配的操作,是汇编阶段的概念;而声明则只是告诉包含该声明的模块在连接阶段从其他模块寻找外部函数和变量。 4. 嵌入式系统的模块分类:一个嵌入式系统通常包括两类模块:(1)硬件驱动模块,一种特定硬件对应一个模块;(2)软件功能模块,其模块的划分应满足低偶合、高内聚的要求。 5. 多任务和单任务系统的概念:多任务系统可以宏观并行地“同时”执行多个任务,而单任务系统不能支持多任务并发操作。多任务系统通常依赖于一个多任务操作系统(OS),多任务 OS 的核心是系统调度器,它使用任务控制块(TCB)来管理任务调度功能。 6. 任务控制块(TCB)的概念:TCB 包括任务的当前状态、优先级、要等待的事件或资源、任务程序码的起始地址、初始堆栈指针等信息。调度器在任务被激活时,要用到这些信息。此外,TCB 还被用来存放任务的“上下文”(context)。 7. 嵌入式多任务 OS 的典型例子:Vxworks、ucLinux 等。 8. 单任务程序典型架构:单任务程序的典型架构包括:(1)从 CPU 复位时的指定地址开始执行;(2)跳转至汇编代码 startup 处执行;(3)跳转至用户主程序 main 执行,在 main 中完成:a.初试化各硬件设备;b.初始化各软件模块;c.进入死循环(无限循环),调用各模块的处理函数。 9. 死循环的概念:死循环是指程序的主循环,通常采用 while(1){} 或 for(;;)的形式。一些著名的死循环包括:操作系统、WIN32 程序、嵌入式系统软件、多线程程序的线程处理函数等。


















- 粉丝: 1w+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 淮海工学院计算机工程学院-开放实验项目总结报告-××专业×××姓名.doc
- 2019版衡中金榜高三一轮化学课件:第27讲水的电离和溶液的pHPPt78张.ppt
- 大学设计方案方案——利用所学C语言知识方案报告停车场管理系统.doc
- WG005201MSOFTX3000话统研究和网络优化专题ISSUE1.0.doc
- cpp-tbox-机器人开发资源
- 解析电力系统中IT运维自动化的应用.docx
- 计算机考试有关题目汇总.doc
- acp-admin-cloud-Kotlin资源
- 电子教师教学案任务单片机开发环境.doc
- mcp-neo4j-AI人工智能资源
- 网络工程师应掌握的个路由器知识要点.doc
- Pycharm入门指南.ppt
- 玻璃钢拉挤成型机总体设计方案(附CAD零件图和装配图).doc
- 第八章--物流自动化技术.doc
- 谈外部报表使用者对现金流量表的数据挖掘.doc
- 初二信息技术程序设计教案.doc


