- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
小型单内核嵌入式操作系统的设计与实现
2009年11月 南京晓庄学院学报 NOV.2009
OF XIAOZHUANGUNIVERSnY No.6
第6期 JOURNALNANJING
小型单内核嵌入式操作系统的设计与实现
曲 渡
(南京晓庄学院数学与信息技术学院,江苏南京210017)
摘要:文章阐述了小型单内核嵌入式操作系统的设计与实现.该系统以流行的PC机做研发平
台,以VMWare虚拟机做实验环境,以Linux操作系统及开放软件做开发工具,整个系统的源码约
为4200行.该系统可实现多进程优先级调度、信号处理、段页式存储管理、写时复制、虚拟内存等功
能.结构简洁、易于移植,适用于嵌入式系统应用开发及操作系统教学实验.
关键词:嵌入式系统;单内核操作系统;进程调度;写时复制;虚拟内存
中图分类号:TP316文献标识码:A 文章编号:1009—7902(2009)06—0079—04
实验.
O引言
EMK以PC机作为研发平台.PC机可比一般嵌
随着计算机技术的不断发展,嵌入式系统的应 入式硬件环境提供更多的扩展性和硬件部件,如监
用也越来越普及.如何有效设计实现嵌入式系统,是 示器、键盘等,可使操作系统的设计涉及更多的硬件
当前业界研究的一个重要课题.另一方面,如何加强 设备.然而,如果将所设计的操作系统直接用PC机
计算机专业操作系统课程的实践性教学,也是多年 执行,显然不便于系统的开发与调试.因此,笔者采
来操作系统课程教学研究的重要课题.本文阐述的
小型单内核嵌入式操作系统设计与实现,就是在这 行EMK.
方面的一个深入研究与探讨.
1引导程序
本文实现的小型单内核嵌入式操作系统(以下
引导程序负责将内核从外存介质(如软盘、u
简称EMK)以流行的PC机做研发平台,以VMWare
虚拟机做实验环境,以Linux操作系统及开放软件盘等)引导到内存,启动内核运行.【1_2J
做开发工具,整个系统的源码约为4200行,其中汇 为简化系统、便于移植,EMK的引导程序采用直
编代码约1100行,C代码3100行.该系统可实现多
接读写软盘扇区的形式实现.为此,笔者专门设计了
进程优先级调度、信号处理、段页式存储管理、通过 一个系统生成工具,将引导扇区、装载程序和内核镜
写时复制功能实现简单的虚拟内存. 像在软盘0面0道1扇区依次写入.引导扇区与装载
EMK由引导程序和系统内核两大部分组成.为 程序由一个汇编程序实现,前半部分为引导部分,写
了便于开发、便于移植、便于理解,整个程序结构简 入0面0道l扇区,以引导扇区标志0xAA55结束;后
洁,使用GCC编译器,采用标准的GCC汇编语言半部分为装载部分,负责将内核从软盘读入内存后,
(ATT语法)及C语言语法,程序设计风格类似于将CPU交给内核,启动并运行操作系统.由于引导扇
区容量有限(不超过510字节),不可能完成复杂的启
Linux,但不使用嵌入式汇编(embedded—assembly)、
内联编译(inline)等特殊方法.由于该系统规模较动工作,所以只负责将装载程序及系统内核一次性读
小、功能实用,不仅适用于实际的嵌人式应用开发, 人内存,然后由装载程序完成后续工作.
同时也适用于操作系统及嵌入式操作系统的教学与
文档评论(0)