游客您好
第三方账号登陆
  • 点击联系客服

    在线时间:8:00-16:00

    电子邮件

    dzs80vip@163.com
  • 扫描二维码

    关注星点微信公众号

《30天自制操作系统》(川合秀实)
[复制链接]
2021-08-22 发布
  • 超级版主
  • 8
  • 7047
  • 0
Tikeni 发表于 2021-8-22 20:01:26 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
30天自制操作系统
30天自制操作系统
  • 作者:川合秀实
  • 类别:操作系统
    格式:PDF
    本站推荐:升级会员无限下载,节约时间成本
简介自己编写一个操作系统,是许多程序员的梦想。也许有人曾经挑战过,但因为太难而放弃了。其实你错了,你的失败并不是因为编写操作系 统太难,而是因为没有人告诉你那其实是一件很简单的事。那么,你想不想再挑战一次呢?
  这是一本兼具趣味性、实用性与学习性的书籍。作者从计算机的构造、汇编语言、C语言开始解说,让你在实践中掌握算法。在这本书的指导下,从零编写所有代码,30天后就可以制作出一个具有窗口系统的32位多任务操作系统。
  本书以课题为主导,边做边玩,抛开晦涩难懂的语言,行文风格十分随性,还充满了各种欢乐的吐槽,适合操作系统爱好者和程序设计人员阅读。
  • 电子书下载
  • 电子书介绍
  • 下载说明
  • 电子书下载Ebook Download
  • 电子书简介Ebook Intros
    自己编写一个操作系统,是许多程序员的梦想。也许有人曾经挑战过,但因为太难而放弃了。其实你错了,你的失败并不是因为编写操作系 统太难,而是因为没有人告诉你那其实是一件很简单的事。那么,你想不想再挑战一次呢?
      这是一本兼具趣味性、实用性与学习性的书籍。作者从计算机的构造、汇编语言、C语言开始解说,让你在实践中掌握算法。在这本书的指导下,从零编写所有代码,30天后就可以制作出一个具有窗口系统的32位多任务操作系统。
      本书以课题为主导,边做边玩,抛开晦涩难懂的语言,行文风格十分随性,还充满了各种欢乐的吐槽,适合操作系统爱好者和程序设计人员阅读。
    电子书目录Ebook Index
    第0天  着手开发之前
    1  前言
    2  何谓操作系统
    3  开发操作系统的各种方法
    4  无知则无畏
    5  如何开发操作系统
    6  操作系统开发中的困难
    7  学习本书时的注意事项(重要!)
    8  各章内容摘要
    第1天  从计算机结构到汇编程序入门
    1  先动手操作
    2  究竟做了些什么
    3  初次体验汇编程序
    4  加工润色
    第2天  汇编语言学习与Makefile入门
    1  介绍文本编辑器
    2  继续开发
    3  先制作启动区
    4  Makefile入门
    第3天  进入32位模式并导入C语言
    1  制作真正的IPL
    2  试错
    3  读到18扇区
    4  读入10个柱面
    5  着手开发操作系统
    6  从启动区执行操作系统
    7  确认操作系统的执行情况
    8  32位模式前期准备
    9  开始导入C语言
    10  实现HLT(harib00j)
    第4天  C语言与画面显示的练习
    1  用C语言实现内存写入(harib01a)
    2  条纹图案(harib01b)
    3  挑战指针(harib01c)
    4  指针的应用(1)(harib01d)
    5  指针的应用(2)(harib01e)
    6  色号设定(harib01f)
    7  绘制矩形(harib01g)
    8  今天的成果(harib01h)
    第5天  结构体、文字显示与GDT/IDT初始化
    1  接收启动信息(harib02a)
    2  试用结构体(harib02b)
    3  试用箭头记号(harib02c)
    4  显示字符(harib02d)
    5  增加字体(harib02e)
    6  显示字符串(harib02f)
    7  显示变量值(harib02g)
    8  显示鼠标指针(harib02h)
    9  GDT与IDT的初始化(harib02i)
    第6天  分割编译与中断处理
    1  分割源文件(harib03a)
    2  整理Makefile(harib03b)
    3  整理头文件(harib03c)
    4  意犹未尽
    5  初始化PIC(harib03d)
    6  中断处理程序的制作(harib03e)
    第7天  FIFO与鼠标控制
    1  获取按键编码(hiarib04a)
    2  加快中断处理(hiarib04b)
    3  制作FIFO缓冲区(hiarib04c)
    4  改善FIFO缓冲区(hiarib04d)
    5  整理FIFO缓冲区(hiarib04e)
    6  总算讲到鼠标了(harib04f)
    7  从鼠标接受数据(harib04g)
    第8天  鼠标控制与32位模式切换
    1  鼠标解读(1)(harib05a)
    2  稍事整理(harib05b)
    3  鼠标解读(2)(harib05c)
    4  移动鼠标指针(harib05d)
    5  通往32位模式之路
    第9天  内存管理
    1  整理源文件(harib06a)
    2  内存容量检查(1)(harib06b)
    3  内存容量检查(2)(harib06c)
    4  挑战内存管理(harib06d)
    第10天  叠加处理
    1  内存管理(续)(harib07a)
    2  叠加处理(harib07b)
    3  提高叠加处理速度(1)(harib07c)
    4  提高叠加处理速度(2)(harib07d)
    第11天  制作窗口
    1  鼠标显示问题(harib08a)
    2  实现画面外的支持(harib08b)
    3  shtctl的指定省略(harib08c)
    4  显示窗口(harib08d)
    5  小实验(harib08e)
    6  高速计数器(harib08f)
    7  消除闪烁(1)(harib08g)
    8  消除闪烁(2)(harib08h)
    第12天  定时器(1)
    1  使用定时器(harib09a)
    2  计量时间(harib09b)
    3  超时功能(harib09c)
    4  设定多个定时器(harib09d)
    5  加快中断处理(1)(harib09e)
    6  加快中断处理(2)(harib09f)
    7  加快中断处理(3)(harib09g)
    第13天  定时器(2)
    1  简化字符串显示(harib10a)
    2  重新调整FIFO缓冲区(1)(harib10b)
    3  测试性能(harib10c~harib10f)
    4  重新调整FIFO缓冲区(2)(harib10g)
    5  加快中断处理(4)(harib10h)
    6  使用“哨兵”简化程序(harib10i)
    第14天  高分辨率及键盘输入
    1  继续测试性能(harib11a~harib11c)
    2  提高分辨率(1)(harib11d)
    3  提高分辨率(2)(harib11e)
    4  键盘输入(1)(harib11f)
    5  键盘输入(2)(harib11g)
    6  追记内容(1)(harib11h)
    7  追记内容(2)(harib11i)
    第15天  多任务(1)
    1  挑战任务切换(harib12a)
    2  任务切换进阶(harib12b)
    3  做个简单的多任务(1)(harib12c)
    4  做个简单的多任务(2)(harib12d)
    5  提高运行速度(harib12e)
    6  测试运行速度(harib12f)
    7  多任务进阶(harib12g)
    第16天  多任务(2)
    1  任务管理自动化(harib13a)
    2  让任务休眠(harib13b)
    3  增加窗口数量(harib13c)
    4  设定任务优先级(1)(harib13d)
    5  设定任务优先级(2)(harib13e)
    第17天  命令行窗口
    1  闲置任务(harib14a)
    2  创建命令行窗口(harib14b)
    3  切换输入窗口(harib14c)
    4  实现字符输入(harib14d)
    5  符号的输入(harib14e)
    6  大写字母与小写字母(harib14f)
    7  对各种锁定键的支持(harib14g)
    第18天  dir命令
    1  控制光标闪烁(1)(harib15a)
    2  控制光标闪烁(2)(harib15b)
    3  对回车键的支持(harib15c)
    4  对窗口滚动的支持(harib15d)
    5  mem命令(harib15e)
    6  cls命令(harib15f)
    7  dir命令(harib15g)
    第19天  应用程序
    1  type命令(harib16a)
    2  type命令改良(harib16b)
    3  对FAT的支持(harib16c)
    4  代码整理(harib16d)
    5  第一个应用程序(harib16e)
    第20天  API
    1  程序整理(harib17a)
    2  显示单个字符的API(1)(harib17b)
    3  显示单个字符的API(2)(harib17c)
    4  结束应用程序(harib17d)
    5  不随操作系统版本而改变的API(harib17e)
    6  为应用程序自由命名(harib17f)
    7  当心寄存器(harib17g)
    8  用API显示字符串(harib17h)
    第21天  保护操作系统
    1  攻克难题——字符串显示API(harib18a)
    2  用C语言编写应用程序(harib18b)
    3  保护操作系统(1)(harib18c)
    4  保护操作系统(2)(harib18d)
    5  对异常的支持(harib18e)
    6  保护操作系统(3)(harib18f)
    7  保护操作系统(4)(harib18g)
    第22天  用C语言编写应用程序
    1  保护操作系统(5)(harib19a)
    2  帮助发现bug(harib19b)
    3  强制结束应用程序(harib19c)
    4  用C语言显示字符串(1)(harib19d)
    5  用C语言显示字符串(2)(harib19e)
    6  显示窗口(harib19f)
    7  在窗口中描绘字符和方块(harib19g)
    第23天  图形处理相关
    1  编写malloc(harib20a)
    2  画点(harib20b)
    3  刷新窗口(harib20c)
    4  画直线(harib20d)
    5  关闭窗口(harib20e)
    6  键盘输入API(harib20f)
    7  用键盘输入来消遣一下(harib20g)
    8  强制结束并关闭窗口(harib20h)
    第24天  窗口操作
    1  窗口切换(1)(harib21a)
    2  窗口切换(2)(harib21b)
    3  移动窗口(harib21c)
    4  用鼠标关闭窗口(harib21d)
    5  将输入切换到应用程序窗口(harib21e)
    6  用鼠标切换输入窗口(harib21f)
    7  定时器API(harib21g)
    8  取消定时器(harib21h)
    第25天  增加命令行窗口
    1  蜂鸣器发声(harib22a)
    2  增加更多的颜色(1)(harib22b)
    3  增加更多的颜色(2)(harib22c)
    4  窗口初始位置(harib22d)
    5  增加命令行窗口(1)(harib22e)
    6  增加命令行窗口(2)(harib22f)
    7  增加命令行窗口(3)(harib22g)
    8  增加命令行窗口(4)(harib22h)
    9  变得更像真正的操作系统(1)(harib22i)
    10  变得更像真正的操作系统(2)(harib22j)
    第26天  为窗口移动提速
    1  提高窗口移动速度(1)(harib23a)
    2  提高窗口移动速度(2)(harib23b)
    3  提高窗口移动速度(3)(harib23c)
    4  提高窗口移动速度(4)(harib23d)
    5  启动时只打开一个命令行窗口(harib23e)
    6  增加更多的命令行窗口(harib23f)
    7  关闭命令行窗口(1)(harib23g)
    8  关闭命令行窗口(2)(harib23h)
    9  start命令(harib23i)
    10  ncst命令(harib23j)
    第27天  LDT与库
    1  先来修复bug(harib24a)
    2  应用程序运行时关闭命令行窗口(harib24b)
    3  保护应用程序(1)(harib24c)
    4  保护应用程序(2)(harib24d)
    5  优化应用程序的大小(harib24e)
    6  库(harib24f)
    7  整理make环境(harib24g)
    第28天  文件操作与文字显示
    1  alloca(1)(harib25a)
    2  alloca(2)(harib25b)
    3  文件操作API(harib25c)
    4  命令行API(harib25d)
    5  日文文字显示(1)(harib25e)
    6  日文文字显示(2)(harib25f)
    7  日文文字显示(3)(harib25g)
    第29天  压缩与简单的应用程序
    1  修复bug(harib26a)
    2  文件压缩(harib26b)
    3  标准函数
    4  非矩形窗口(harib26c)
    5  bball(harib26d)
    6  外星人游戏(harib26e)
    第30天  高级的应用程序
    1  命令行计算器(harib27a)
    2  文本阅览器(harib27b)
    3  MML播放器(harib27c)
    4  图片阅览器(harib27d)
    5  IPL的改良(harib27e)
    6  光盘启动(harib27f)
    第31天  写在开发完成之后
    1  继续开发要靠大家的努力
    2  关于操作系统的大小
    3  操作系统开发的诀窍
    4  分享给他人使用
    5  关于光盘中的软件
    6  关于开源的建议
    7  后记
    8  毕业典礼
    9  附录
  • 电子书下载说明Download Instruments

    下载帮助:

    1. 本站所有电子图书资源下载链接均为百度网盘提取链接和提取码。

    2. 回复所需电子图书资源帖并刷新即可得到百度网盘提取链接和提取码,保存到您网盘下载或直接浏览器下载即可。

    3. 资源下载到您本地后,解压即可得到原始文件,PDF格式用Acrobat DC等PDF阅读器打开,EPUB/MOBI等格式可用calibre打开阅读。

    4. 本站只收集整理市场上难买的绝版电子书籍,方便科研人员查阅!为保护版权,请在使用后自觉删除!

    5. 如果您觉得本站不错 请推荐给您的好友。

    所有资源来源网络,仅用于分享知识,学习和交流,如侵犯您的权益,请联系站长微信dzs80com删除资源。

游客,如果您要查看本电子书下载地址请回复

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2018-2021 All Rights Reserved. 80电子书
*本站提供的所有电子书资源均来自互联网,所有版权皆属原作者所有,如果认为本站侵犯了您的版权,请告知,我们会立即删除。
  • 官方微信