工大后院

 找回密码
 加入后院

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 2405|回复: 4

用开源软件-自已动手写操作系统

[复制链接]
发表于 2008-4-21 11:25 | 显示全部楼层 |阅读模式
RT
有兴趣的可以看下。。
正在学操作系统原理的更要看下。。。

http://share.solrex.cn/WriteOS/



目录:


写在前面的话i
序言vii
第一章计算机启动1
1.1 计算机启动过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 磁盘抽象物理结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 硬盘. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2 软盘. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.3 启动扇区. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 使用虚拟机. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 VirtualBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.2 Bochs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 使用软盘镜像. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.1 制作软盘镜像. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.2 用软盘镜像启动虚拟机. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
第二章最小的“操作系统” 19
2.1 Hello OS world! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.1 Intel 汇编转化为AT&T(GAS) 汇编. . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.2 用连接脚本控制地址空间. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.3 用Makeˉle 编译连接. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1.4 用虚拟机加载执行boot.img . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 FAT 文件系统. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1 FAT12 文件系统. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2 启动扇区与BPB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.3 FAT12 数据结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.4 FAT12 根目录结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3 让启动扇区加载引导文件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.1 一个最简单的loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.2 读取软盘扇区的BIOS 13h 号中断. . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.3 搜索loader.bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3.4 加载loader 入内存. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3.5 向loader 转交控制权. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.3.6 生成镜像并测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4 本章全部源代码. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
发表于 2008-4-21 11:36 | 显示全部楼层
头大
回复

使用道具 举报

发表于 2008-4-21 11:51 | 显示全部楼层
看了下个pdf,这个只能说给有兴趣的人来磨了。以前的我看到也只有,然后丢在一边。

除了文件系统是用win的(FAT格式),其他的类似汇编,用AT&T格式,这个跟intel还是有点区别,要跟思维惯性做斗争。还有就是makefile文件的编写,格式、shell等……Linux系统的使用者学习起来会顺手一些,
回复

使用道具 举报

 楼主| 发表于 2008-4-21 11:56 | 显示全部楼层
“顺便"把linux学了。。
回复

使用道具 举报

发表于 2008-4-21 12:08 | 显示全部楼层
那本书的封面好搞野....

有时间有兴趣的同学不妨试试.....
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入后院

本版积分规则

QQ|Archiver|手机版|小黑屋|广告业务Q|工大后院 ( 粤ICP备10013660号 )

GMT+8, 2025-8-30 10:45

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表