大小: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
应用信息
同类热门
类似软件
PDF生成器(PDFCreator)100.82M1484人在用PDF生成器(PDFCreator)是一个开源应用程序,支持windows打印功能的任何程序都可以使用它创建PDF文档。使用PDFCreator能够创建PDF文档,Postscript文档,Encapsulated Postscript&nbs
查看
深入浅出mysql第二版 pdf180.33M468人在用 深入浅出mysql数据库开发优化与管理维护(第2版),简称为深入浅出mysql第二版,是一本MySQL数据库使用指导指南,由唐汉明,翟振兴,关宝军三人共同编著。本书内容丰富翔实,从开发、管理和管理维护3个角度逐步深入,全面介绍MySQL数据库技术,
查看
eXPert PDF Reader(免费的PDF阅读器)29M1108人在用 eXPert PDF Reader是一款完全免费的PDF阅读器,支持查看和打印PDF文件,修改现有文件,包括修改文件概述,插入图章和修改任何注释等,运行速度快,稳定和个性化的换肤功能以及对中日韩文的良好支持将满足你所有的需求,软件完全免费,操作简单
查看热门标签
网友评论0人参与,0条评论
最新排行
高中数学公式大全完整版2.2M 说起数学,相信在不少小伙伴心中都是非常头疼的一门科目,其是各种公式、定理更是记得头昏脑涨,可要想学好数学,数学公式、定理是肯定少不了的,如果不好好掌握的话,那么数学别想高分。所以小编本次要分享的是高中数学公式大全完整版,专为即将面临高考的同学所准备
查看
三级网络技术无纸化考试模拟软件43.29Mv2018.3.001官方版 三级网络技术无纸化考试模拟软件是由未来教育出品的一款独立运行,功能强大的计算机三级网络技术考试模拟软件。该软件完全按照《全国计算机等级考试最新考试大纲》研制而成,提供考试题库、错题重做、模拟考场等功能,界面全真模拟,自动评分、详尽解析,考试环境与真
查看
海句(外语学习辅助软件)1.3Mv2.3.0402绿色版 海句是一款先进、精致、高效、强悍的外语习得辅助类软件,原名叫做:千万语。它主要针对第二语言习得者与实践者,依托最先进的二语习得理论和最适合自身的学习素材,以简洁明快的操作模式和科学高效的重复刺激与间隔唤醒机制,全面提高用户“听说读写译”五大常规语言
查看
打字先锋4.6电脑版740K 打字先锋4.6电脑版是一款功能丰富、小巧精致的五笔练习软件,该软件自带五笔输入法,通过它可以帮助用户熟练使用五笔输入法,提高打字效率和速度,而且练习内容丰富,包含多种练习文章,可以让你自由的定义练习内容,自带的及时统计让你能够更加注重练习目的,相信
查看
spark高级数据分析5.79Mpdf扫描版 spark高级数据分析是一本Spark实用手册,由著名大数据公司Cloudera的四名数据科学家编写,他们联袂展示了利用Spark进行大规模数据分析的若干模式,而且每个模式都自成一体。全书将Spark、统计学方法和真实数据集结合起来,通过实例向读者
查看
html5秘籍第2版107.18Mpdf扫描版HTML5不仅仅是一种标记语言,它还指代多种独立的Web标准。但是如何才能学习html5的全部知识呢?小编推荐用户使用html5秘籍第2版,这是一本HTML5语言的学习指导书籍,由美国程序员Matthew MacDonald编著。本书内容丰富,由浅入深,
查看
docker入门实战1.38Mpdf完整版Docker是一个开源的应用容器引擎,它能够让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,最近有许多的想学docker技术的网友在找docker入门实战pdf,今天小编给大家找来了,此版本是pdf完整版的
查看