下载  >  操作系统  >  其它  > 一步一步写嵌入式操作系统.pdf

一步一步写嵌入式操作系统.pdf 评分:

很好的一部关于嵌入式入门的书籍,可以让你明白操作系统的构造以及明白一般嵌入式的实现构架
言 本书作者多年的嵌入式领域研发、管理和教学经验,促成了本书的诞 生 本书的目的 操作系统是一个古老的话题,它的出现和发展,对于计算机技术来说, 意义非凡。这种发展不仅仅体现在传统的计算机中,在强调精简、高效率和 实时性的嵌入式领域,操作系统也发挥着不可替代的作用。 熟悉嵌入式技术的读者朋友多少都能列举出一些典型的嵌入式操作系 统,如ECOS、UCOS、Linx、 Vx Works,等等,这些操作系统凭借自身的优 势,在嵌入式领域的各种应用中安营扎寨,各占据了一席之地,国内基于这 些嵌入式操作系统的书籍也是琳琅满目、层出不穷。 本书写作的一个根本目的是能够体现出嵌入式操作系统的基本原理和 一步步写嵌入式操作系统—ARM编程的方法与实践 本书强调实践,力求能够帮助读者编写岀属于自己的嵌入式操作系统。 如果读者以本书为基础(或者哪怕从中得到了一丝灵感)开发出一些优秀的 嵌入式操作系统,那将会是非常令人高兴的事情! 本书的特点 目前,市面上与操作系统理论相关的书有很多,与这些书相比,本书特 点十分鲜明。 第一,本书的内容立足于嵌入式技术,以目前最流行的ARM体系结构 为基础,为您展示出嵌入式环境下操作系统的基本原理和实现方法。这是 本学习嵌入式技术,尤其是系统级技术的首选教材 第二,本书是以实践的方式讲述全书内容的,重视理论联系实际。操作 系统涉及的每一个角落,如进程、内存、中断、文件系统、驱动程序,都有 若干段代码供读者实践。实际上,读者只需要将书中的代码拼接起来,就可 以构成一个结构完整的操作系统内核 第三,涉猎广泛。为了让读者能够全方位地理解操作系统的理论和实现 方法,书中涉及了高级C语言编程、汇编语言、算法、ARM体系结构等诸多 领域,分析研究了包括 freertoS、 ucosIIⅠ、u-boot、 Linux、 Minix等在内的 操作系统和引导程序的源代码。这些必备的知识和概念都将成为您深入研究 任何一款操作系统的绝佳人门内容。 第四,本书语言通俗易懂。书中在描述各种操作系统概念或原理时,力 求使用通俗的语言浅显地说明问题,这与一些学术性质的操作系统读物有明 显的不同 谁适合读这本书 本书是写给那些想了解操作系统原理的人,也适合那些想要学习ARM 技术的开发者。当然,对于那些致力于开发属于自己的嵌入式操作系统的读 者们来说,本书是一部绝佳的入门指南 当然,我们也希望本书的读者至少具备一些基本的C语言编程基础。除 了C语言之外,如果您对微机原理之类的知识也略知一二,那么在阅读本书 前言 的时候,将会觉得更加轻松。本书不需要读者了解嵌入式技术,因为这些知 识在书中都会涉及,但如果您也知道一些关于ARM的事,那么无论是重写 书中的代码还是深入理解书中所讲述的操作系统原理,都会水到渠成 学习本书的方法 本书在知识的宽度和篇幅上做了平衡。希望展示给读者一个操作系统的 全貌,保证读者能够自己动手完成操作系统的编写,而这些都需要我们在开 发的过程中不断学习书中所涉猎的知识点。毫无疑问,这些内容是相当庞大 的 为了避免在书中罗列各种技术手册的细节,在本书的编写过程中,我们 遵循了只对用到的知识深入讲解的原则。这样做的弊端是,读者会对很多知 识点有深入的理解,但却不全面。 因此,我们推荐阅读本书的最佳方法是,以本书为主线,以其他本书中 未提到的相关知识、参考资料为辅助。当然,如果读者的确是时间有限,那 么单凭书中所涉猎的知识,也足以完成读者学习和实践的过程了。 另外,这里还想强调的是,一定要多多实践,实践将成为您快速掌握 门新技术的不二选择。 为了方便读者获取书中涉及的相关资料和工具,我们开设了一个网站 读者朋友可以去访问www.eeos.org以获取帮助。 最后,希望所有的读者在读完本书之后,都能够有所收获,希望每位读 目录 第1章搭建工作环境 1.1选择合适的开发环境 1.1.1准备 Cygwin开发环境 1.1.2使用 Linux开发环境 12开发工具的使用 2788 1.2.1编译器的选择和安装 122编辑器的选择和使用 10 1.3虚拟硬件的安装和使用 13 131 Sky Eye的安装 132 Sky eye的使用 15 1.4总结 17 第2章基础知识 18 21使用C语言写第一段程序 18 22用脚本链接目标文件 22 23用汇编语言编写程序 25 24汇编和C的混合编程 Q 241过程调用标准 30 242混合编程的例子 电喝 .31 2.5 Makefile 33 26总结 35 第3章操作系统的启动 3.1启动流程 36 311ARM的启动过程 38 312ARM操作系统解读 39 3.1.3正式开始写操作系统 46 314让启动代码运行起来 .52 3.2 MMU 321页表 58 322页权限 .64 3. 2.3 cache A write buffer 66 目录 324激活MMU ,69 33GCC内联汇编 71 34总结 78 第4章打印函数 .79 41打印函数实例 80 4.1.1变参函数是如何工作的 81 41.2亲自实现一个可变参数函数… .83 4.1.3实现打印函数中的格式转换 87 42实现自己的打印函数 91 4.3总结 第5章中断处理 100 51ARM的中断 101 51.1统一的异常和中断处理 102 512独立的中断处理 14 52简单的中断处理实例 118 52.1解决异常向量表的问题 118 522简单的中断处理代码 120 523S3C2410中的定时器 ··,鲁最 122 524让中断处理程序运行起来 124 53复杂的中断处理实例 126 531提高中断的效率 126 532中断嵌套的实现 130 54更优秀的中断嵌套方法 .134 55总结 139 一步步写嵌入式操作系统ARM编程的方法与实践 64总结 83 第7章框架 ,184 7.1驱动程序框架 184 71.1基于存储设备的实例 186 71.2运行存储设备实例 192 72文件系统框架 194 721文件系统的原理 195 7.22文件系统框架的实现 197 72.3 romfs文件系统类型 200 724实现romf文件系统 04 725让代码运行起来 210 73总结 215 第8章运行用户程序 217 81二进制程序的运行方法 218 82可执行文件格式 ,222 821ELF格式的组成结构 223 822操作ELF格式文件的方法 .226 823运行ELF格式的应用程序 ··垂 ,230 83系统调用 232 831用户和内核的运行空间 232 8.32实现一个系统调用 235 833运行系统调用程序 244 84总结 246 第9章进程. 247 91进程的实现原理 247 92进程的实现 252 921改写中断处理程序 .252 922抽象调度函数 256 923新进程的产生 258 924多个进程同时运行 262 93总结 265 结束语 266 参考资料 267 VIII ALL 第1章 搭建工作环境 工欲善其事,必先利其器”。在我们开始写操作系统代码之前,花些时 间来学习工具的使用其实是非常必要的。从过程上看,操作系统的开发与普 通应用程序的开发并没有太大的区别。正像开发应用程序那样,要开始一个 操作系统的开发,首先也必须要解决开发环境搭建的问题。 搭建开发环境归根结底是要解决四个问题 在什么样的系统环境下开发? ●使用什么样的编辑工具? ●怎样编译程序? 程序如何运行? 一步步写嵌入式操作系统—ARM编程的方法与实践 本来使用什么样的操作系统,不应该成为限制开发的理由。但这里需要说 明的是,本书的所有示例代码都是在一个叫做 Gentoo的 Linux发行版中开发 的。书中所使用的绝大多数工具在 Linux下都有原生的支持。因此如果有可能, 还是建议大家使用 Linux操作系统来学习和编写本书的示例。 然而,要求那些不熟悉 Linux操作系统的开发者在短时间内学会使用 Linux也并不现实。好在 Windows操作系统在兼容性和应用程序多样性等方 面是无人能敌的,于是在 Windows下,我们问样也找到了一套解决方案来 编译和运行本书的代码,它就是 Cygwin Cygwin是一个在 Windows平台上运行的UNⅹ模拟环境,是 Cygnus Solutions公司开发的自由软件。它对于学习UNIX/inux操作环境、从UNIX 到 Windows的应用程序移植,或者进行某些特殊的开发工作(尤其是使用 gnu工具集在 Windows上进行嵌入式系统开发)都非常有用。 下面我们就来介绍一下 Cygwin环境的安装和使用方法。如果您是 Linux 用户,就可以跳过这部分,继续阅读下一小节的内容。 1.11准备 Cygwin开发环境 首先,我们需要从www.Cygwin.。org/Cygwin/setup.exe处下载最新版的 Cygwin安装程序。 接下来运行这个安装程序,如图1-1所示。 Cygwin Net Release Setup Program used for the的aan团t Cygwin environment as well as ai subsequent updates. Make sure member where you saved t The pages that follow will guide you through the instalation ackages spanning a wide variety cf purposes. We install a base set of packages by defau虎.丫 ou can alwaya run this progrem at any tine in the future to add. remove, or 下一步》职消 图1-1 Cygwin的安装

...展开详情
2012-04-02 上传 大小:6.78MB
举报 收藏 (4)
分享

评论 下载该资源后可以进行评论 共39条

dallas48 多谢分享~~~~
2018-08-03
回复
czz100 很有收获的书,值得一看
2018-07-03
回复
yutianshaobo 书中内容非常不错,超级赞。
2016-05-30
回复
u4578123333 新手必看,超级好,让我对于操作系统和基础都有了很好的理解,对于要编写一个操作系统的东西让我又可以了解了很多很多的东西。非常值得推荐的书本
2015-11-12
回复
qq_19403133 非常好的嵌入式教材。
2015-10-02
回复
30天自制操作系统 epub 电子书 pdf

电子书 30天自制操作系统, epub格式,支持kindle, 写的非常清楚

立即下载
30天自制操作系统(含源码及pdf书)

《30天自制操作系统》包含源码及pdf电子书 走过路过随便看看

立即下载
30天自制操作系统(中文版) PDF 文字版 非扫描

30天自制操作系统(中文版) PDF 文字版 非扫描 全网首发

立即下载
30天自制操作系统.pdf 完整版

30天自制操作系统.pdf 完整版,绝对值得珍藏

立即下载
30天自制操作系统(PDF全)

30天自制操作系统 PDF 扫描版 全本 高大上!

立即下载
30天自制操作系统 PDF + 完整源码光盘

这是一本集趣味性、实用性与学习性于一起的引导自己动手编写创建操作系统的书籍,指导大家从零编写所有代码来开发一个简易的带有窗口系统的32位多任务操作系统。 网上的源码基本都是不完整的,这也让本书的爱好者和学习者深受其害,本人经多次查找,终于找到了每个课程文件夹下包含多个完整子文件夹的源码光盘文件,整个光盘文件共 84.2M 大小,另加 PDF 书籍的文件,两文件合计共 138M 大小,合并压缩后共 60.5M ,在此分享给大家。 在此不知怎么发图片,大家可以去我的一篇推荐文章中去看此资源的实际情况,绝对是网上最完整的源码资源了。文章地址:https://blog.csdn.net/ccxhh

立即下载
《30天自制操作系统》PDF+ISO

《30天自制操作系统》光盘.iso 原书自带光盘文件。

立即下载
30天自制操作系统PDF文档

操作系统:从01天到30天,自制操作系统;

立即下载
30天自制操作系统 全套资料

30天自制操作系统,包括PDF版的书和相关程序和使用软件

立即下载
30天自制操作系统.pdf(压缩包)

30天自制操作系统.(川合秀实).周自恒 恒

立即下载
30天自制操作系统 高清版

30天自制操作系统.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!

立即下载
30天自制操作系统—川合秀实.pdf 高清中文电子书

操作系统开发入门经典书籍-30天自制操作系统,带有目录,十分适合想自己动手写一个操作系统的初学者

立即下载
[图灵程序设计丛书].30天自制操作系统.pdf 原版

非扫描,非转换,图灵原版,放心下载 附件代码文件较大,请按书内指示下载

立即下载
《30天自制操作系统》kindle电子书

《30天自制操作系统》kindle电子书

立即下载
30天自制操作系统(完整版)

30天自制操作系统,内容比较有趣,有兴趣的朋友可以下载看看。。。。

立即下载