内容简介
纯二进制输入内容生成一个.img镜像系统,输出hello world;
使用作者给定的软件工具包,进行软盘模拟等等;
简单汇编指令,如DB、RESB、DW、DD
一些术语:TAB=4、FAT12格式、启动区、IPL、启动(boot)
镜像文件
不知道为啥我总是会把.img当成一种图片格式……
.img和.iso都是镜像文件,只是类型不同,具体没有去了解。
镜像文件可以类比于压缩文件,将特定的一系列文件按照一定的格式制作成单一的文件,便于用户下载和使用。最重要的特点是可以被特定软件识别并且可以直接刻录进光盘。
软件包
本书附录光盘里有一个tolset文件夹(tool set,工具集),里面有着各式各样的本次项目需要用到的工具。如果没有的话,书中会有下载链接。
简单汇编
DB、DW、DD:定义一串数据,分别是一个字节、两个字节和四个字节。(byte、word、doubleworld)
RESP(reserve byte):预留字节数,并置为0。如 RESP 10,则从该行开始,后面跟着十个0x00
一些术语:
TAB=4:TAB键的宽度,设置为4程序结构更好更易读。
FAT12:FAT文件系统,详细内容比较复杂不多赘述。FAT是文件分配表(file allocation table),操作系统课程内的文件系统会学到。
启动区:操作系统启动时最先读入的一个区域,可能有若干个块。这个区内的内容是操作系统启动必备的内容,并通过这块区域读取剩下的内容。
IPL:启动程序加载器,有时也将启动区称为IPL。加载操作系统的程序叫做IPL。
启动:bootstrap,跟着作者奇奇怪怪的描述,我也去wiki上查了下定义。
(有个前端框架也叫bootstrap,注意区别)
In general, bootstrapping usually refers to a self-starting process that is supposed to proceed without external input. In computer technology the term (usually shortened to booting) usually refers to the process of loading the basic software into the memory of a computer after power-on or general reset, especially the operating system which will then take care of loading other software as needed.
也就是用于指代自启动、不需要额外输入的进程。
总结
第一天的内容还是很简单的。除了刚开始让你输个十几万行二进制显得很麻瓜以外,讲得还是挺可以的。此外,足以见得汇编的重要性。在方方面面都有显示其作用的汇编,虽然无法作为主流开发工具,但是必须要看得懂,知道在干什么,才有可能学习底层知识,否则只是个会用工具的人。
- 本文作者: crlwebby
- 本文链接: https://crlwebby.github.io/basic/OS/OS-30-days-1/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!