大小:30.91M
更新时间:23-10-15
系统:Pc
自己动手写操作系统是于渊编写的一本编程爱好者编写的别具一格、颇有特色的操作系统原理与实现的图书,本书在详细分析操作系统原理的基础上,用丰富的实例代码,一步一步地指导读者用C语言和汇编语言编写出一个具备操作系统基本功能的操作系统框架。作者对系统初启、保护模式、控制权如何转入OS Kernal等都写得具体详细,对操作系统的爱好者以及涉足于操作系统设计、实现和应用的读者有很好的参考价值,可以作为高等院校操作系统课程的实践参考书。ps:这里小编带来的是自己动手写操作系统pdf高清版,并且是无水印影印版,可以让读者更清晰的阅读,快下载收藏吧。
《自己动手写操作系统》是一本编程爱好者编写的别具一格、颇有特色的操作系统原理与实现的书。该书作者对操作系统具有特殊爱好,在大量实践和反复钻研下积累了丰富而可贵的经验,为了与广大读者分享这些经验写成了此书。本书对一般的操作系统原理教材不很重视的部分,例如,系统初启、保护模式、控制权如何转入OS Kernal等都写得具体详细,对操作系统的爱好者以及涉足于操作系统设计、实现和应用的读者有很好的参考价值。
《自己动手写操作系统》的文字生动活泼,富有个性,可望提高青年学子的阅读兴趣。本书在详细分析操作系统原理的基础上,用丰富的实例代码,一步一步地指导读者用C语言和汇编语言编写出一个具备操作系统基本功能的操作系统框架。本书不同于其他的理论型书籍,而是提供给读者一个动手实践的路线图。书中讲解了大量在开发操作系统中需注意的细节问题,这些细节不仅能使读者更深刻地认识操作系统的核心原理,而且使整个开发过程少走弯路。
第1章 马上动手写一个最小的“操作系统”1 1.1 准备工作1 1.2 10分钟完成的操作系统1 1.3 Boot Sector3 1.4 代码解释3 1.5 水面下的冰山5 1.6 回顾6 第2章 搭建你的工作环境7 2.1 虚拟计算机(Virtual PC)7 2.1.1 Virtual PC初体验8 2.1.2 创建你的第一个Virtual PC9 2.1.3 虚拟软盘研究12 2.1.4 虚拟软盘实战14 2.2 编译器(NASM & GCC)18 2.3 安装虚拟Linux19 2.4 在虚拟Linux上访问Windows文件夹26 2.5 安装虚拟PCDOS26 2.6 其他要素29 2.7 Bochs29 2.7.1 Bochs vs. Virtual PC vs. VMware30 2.7.2 Bochs的使用方法31 2.7.3 用Bochs进行调试33 2.7.4 在Linux上开发34 2.8 总结与回顾36 第3章 保护模式(Protect Mode)37 3.1 认识保护模式37 3.1.1 GDT(Global Descriptor Table) 42 3.1.2 实模式到保护模式,不一般的jmp45 3.1.3 描述符属性47 3.2 保护模式进阶50 3.2.1 海阔凭鱼跃50 3.2.2 LDT(Local Descriptor Table)58 3.2.3 特权级62 3.3 页式存储82 3.3.1 分页机制概述83 3.3.2 编写代码启动分页机制84 3.3.3 PDE和PTE85 3.3.4 cr388 3.3.5 回头看代码88 3.3.6 克勤克俭用内存90 3.3.7 进一步体会分页机制100 3.4 中断和异常107 3.4.1 中断和异常机制109 3.4.2 外部中断111 3.4.3 编程操作8259A113 3.4.4 建立IDT116 3.4.5 实现一个中断117 3.4.6 时钟中断试验119 3.4.7 几点额外说明121 3.5 保护模式下的I/O122 3.5.1 IOPL122 3.5.2 I/O许可位图(I/O Permission Bitmap)123 3.6 保护模式小结123 第4章 让操作系统走进保护模式125 4.1 突破512字节的限制125 4.1.1 FAT12126 4.1.2 DOS可以识别的引导盘131 4.1.3 一个最简单的Loader132 4.1.4 加载Loader入内存133 4.1.5 向Loader交出控制权142 4.1.6 整理boot.asm142 4.2 保护模式下的“操作系统”144 第5章 内核雏形146 5.1 用NASM在Linux下写Hello World146 5.2 再进一步,汇编和C同步使用148 5.3 ELF(Executable and Linkable Format)150 5.4 从Loader到内核155 5.4.1 用Loader加载ELF155 5.4.2 跳入保护模式161 5.4.3 重新放置内核170 5.4.4 向内核交出控制权175 5.4.5 操作系统的调试方法176 5.5 扩充内核184 5.5.1 切换堆栈和GDT184 5.5.2 整理我们的文件夹191 5.5.3 Makefile191 5.5.4 添加中断处理200 5.5.5 两点说明218 5.6 小结219 第6章 进程221 6.1 迟到的进程221 6.2 概述222 6.2.1 进程介绍222 6.2.2 未雨绸缪——形成进程的必要考虑222 6.2.3 参考的代码224 6.3 最简单的进程224 6.3.1 简单进程的关键技术预测225 6.3.2 第一步——ring0→ring1227 6.3.3 第二步——丰富中断处理程序243 6.3.4 进程体设计技巧254 6.4 多进程256 6.4.1 添加一个进程体256 6.4.2 相关的变量和宏257 6.4.3 进程表初始化代码扩充258 6.4.4 LDT260 6.4.5 修改中断处理程序261 6.4.6 添加一个任务的步骤总结263 6.4.7 号外:Minix的中断处理265 6.4.8 代码回顾与整理269 6.5 系统调用280 6.5.1 实现一个简单的系统调用280 6.5.2 get_ticks的应用286 6.6 进程调度292 6.6.1 避免对称——进程的节奏感292 6.6.2 优先级调度总结300 第7章 输入/输出系统302 7.1 键盘302 7.1.1 从中断开始——键盘初体验302 7.1.2 AT、PS/2键盘304 7.1.3 键盘敲击的过程304 7.1.4 解析扫描码309 7.2 显示器325 7.2.1 初识TTY325 7.2.2 基本概念326 7.2.3 寄存器328 7.3 TTY任务332 7.3.1 TTY任务框架的搭建334 7.3.2 多控制台340 7.3.3 完善键盘处理346 7.3.4 TTY任务总结354 7.4 区分任务和用户进程354 7.5 printf357 7.5.1 为进程指定TTY357 7.5.2 printf()的实现358 7.5.3 系统调用write()361 7.5.4 使用printf()363 后记366 参考文献369 附录书中的章节和代码对照表370
同类热门
类似软件
量化投资以python为工具53.25M1011人在用 量化投资以python为工具是一本量化投资优质工具书,由蔡立耑编著。全书主要介绍了Python的入门级操作及Python语言的介绍和安装,并由浅入深的为读者讲解了Python语言和Python量化的重要操作知识点,可以快速的帮助用户完成Python
查看PDF生成器(PDFCreator)41.9M968人在用PDF生成器(PDFCreator)是一个开源应用程序,支持windows打印功能的任何程序都可以使用它创建PDF文档。使用PDFCreator能够创建PDF文档,Postscript文档,Encapsulated Postscript&nbs
查看ApowerPDF(PDF编辑器)13.58M2228人在用 ApowerPDF是由Apowersoft有限公司开发的一款功能十分强大的PDF编辑器,该软件集PDF阅读、转换、编辑以及分割合并等功能为一体,有着非常简洁明了的操作界面,设计得出人性化。软件为用户提供了多样化的PDF编辑功能,您可以使用它轻松编辑
查看离散数学及其应用(原书第6版)76.74M606人在用 离散数学及其应用(原书第6版)是一本经典的离散数学教材,由(美)罗森(Rosen,K.H)著;袁崇义,屈婉玲,张桂芸等译,机械工业出版社发行。全书全面而系统地介绍了离散数学的理论和方法,内容涉及数学推理、组合分析、离散结构、算法思维以及应用与建模。
查看热门标签
网友评论0人参与,0条评论
最新排行
系统集成项目管理工程师教程电子版61.63M柳纯录 pdf扫描版 系统集成项目管理工程师教程电子版是全国计算机专业技术资格考试办公室组织编写的考试指定用书,由柳纯录编著。本书依据信息安全工程师考试大纲编写,注重理论联系实际,突出实用技术,内容包括信息安全基础、密码学、网络安全、信息系统安全基础、应用系统安全基础、
查看新课标小学语文四库全书86.06Mv2021官方版 新课标小学语文四库全书是由中国大百科全书专门针对小学生所打造的一款古典文学学习文档,内容涉及范围非常广阔,不仅收录了各种小学语文相关的知识,资料,学习课文,阅读材料等,还涵盖了经、史、子、集四部分,里面的知识均取自人教版课本及资料,让孩子可以更加作
查看node.js资料合集包25.9Mpdf高清版node.js资料合集包是多多小编从网上收集的一批node.js学习资料,总共6个pdf高清版文档,包括node.js开发指南、Node+Web开发、NODE.js入门手册、Node入门、深入浅出Node.js和Node,+Up+and+Running。
查看海量网络存储系统原理与设计42.83M曹强 pdf扫描版 海量网络存储系统原理与设计是一本网络存储系统原理分析设计书籍,由曹强,黄建忠,万继光和谢长生等人共同编著。本书从设计者的角度讨论高性能、高可用性和高安全性的海量网络存储系统及其部件的设计原则、评价方法、研究手段和实现方法,同时针对一些典型系统和技术
查看企业APP设计运营完全手册31.75M徐声远 pdf扫描版 企业APP设计运营完全手册是一本企业APP设计运营书籍,由Bri体验科技联合创始人徐声远编写。全书汇集了作者数年的研究和实战经验,系统分析了企业APP的具体操作过程,应注意的方法和技巧。读者通过读完此书,能够重新审视自己或竞争对手发布的App,重新
查看零基础学C语言(第2版)104.05M康莉pdf扫描版 零基础学C语言(第2版)是一本c语言的基础入门图书,由程序员康莉、李宽,陈国建编著。本书由浅入深,循序渐进,全书分为编程基础、编程进阶、编程应用、项目实战、上机练习、面试指南六个阶段进行讲解,同时书中还拥有大量的实例、练习题和面试题,能够全方位的帮
查看分布式服务框架原理与实践27.81M李林锋pdf扫描版分布式服务框架原理与实践是一本服务框架平台设计教材,由华为PaaS平台架构师李林锋编著。全书条理清晰、由浅入深的解析了分布式服务架构所涉及方方面面的关键技术和原理,包括原理分析、关键技术、开发案例以及业界技术,既有纵向演进介绍,又有横向竞品对比。尤其针对
查看实战gradle pdf 中文版52.24M高清扫描版 Gradle是一个通用的自动化构建工具,类似于传统工具如Ant和Maven,但如何更好的入门呢?小编特别介绍大家阅读实战gradle,这是一本关于使用Gradle实现端到端的项目自动化的综合指南,由美国程序员Benjamin Muschko编著,本
查看windows内核安全编程从入门到实践pdf62.16M扫描版windows平台下的内核安全编程可能很多朋友都不是特别了解,因此小编特意带来了这款windows内核安全编程从入门到实践pdf,它详细的讲解了内核安全编程的所有知识。首先讲述了驱动编程的基本方法,然后介绍了Windows各个系统组件的工作原理、各个组件
查看