开发者社区> 奶berber> 正文

操作系统加载相关

简介: ; FAT12 软盘标准 DB 0xeb, 0x4e, 0x90 DB "BerBer" ; 启动区的名称可以任意 8字节 DW 512 ; 每个扇区...
+关注继续查看
; FAT12 软盘标准

        DB        0xeb, 0x4e, 0x90
        DB        "BerBer"        ; 启动区的名称可以任意  8字节
        DW        512                ; 每个扇区的大小  512字节
        DB        1                ; 簇的大续爱  1个扇区
        DW        1                ; FAT起始位置  第一个扇区
        DB        2                ; FAT个数 2 
        DW        224                ; 根目录大小
        DW        2880            ; 该磁盘大小 2880
        DB        0xf0            ; 磁盘种类
        DW        9                ; FAT长度
        DW        18                ; 1个磁道有几个扇区
        DW        2                ;  磁头数
        DD        0                ; 不使用分区
        DD        2880            ;  重写一次磁盘大小
        DB        0,0,0x29        ;  固定
        DD        0xffffffff        ;  卷标号码
        DB        "BerBer-OS   "    ; 磁盘名称
        DB        "FAT12   "        ;  磁盘格式名称
        RESB    18                ; 先空出18字节

; 程序主体

        DB        0xb8, 0x00, 0x00, 0x8e, 0xd0, 0xbc, 0x00, 0x7c
        DB        0x8e, 0xd8, 0x8e, 0xc0, 0xbe, 0x74, 0x7c, 0x8a
        DB        0x04, 0x83, 0xc6, 0x01, 0x3c, 0x00, 0x74, 0x09
        DB        0xb4, 0x0e, 0xbb, 0x0f, 0x00, 0xcd, 0x10, 0xeb
        DB        0xee, 0xf4, 0xeb, 0xfd

; 信息显示部分

        DB        0x0a, 0x0a        ; 2个换行
        DB        "hello, world"
        DB        0x0a            ; 换行
        DB        0

        RESB    0x1fe-$            ; 填写0x00,直到0x001fe

        DB        0x55, 0xaa

; 以下是启动区以外部分的输出

        DB        0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00
        RESB    4600
        DB        0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00
        RESB    1469432

          FAT12有很好的格式兼容性,将软盘格式化(不要使用快速格式化)之后,将这段代码写入。再使用这张操作系统软盘重启电脑,就可以看到这个只有一行输出的操作系统了。

  

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【操作系统】1.3.1 操作系统的运行机制
【操作系统】1.3.1 操作系统的运行机制
61 0
操作系统内存管理模块中的动态重定位需要由什么来实现?
操作系统可以使用一种称为重定位的技术来管理每个进程在内存中的存储位置。
214 0
【操作系统】文件
【操作系统】文件
52 0
【操作系统】操作系统接口
【操作系统】操作系统接口
123 0
操作系统和内核有什么区别?
操作系统和内核有什么区别?
526 0
操作系统是如何启动的
在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但是一旦进入操作系统,程序员几乎可以定制所有方面。所以,这个部分与程序员的关系更密切。 主要关心的是Linux操作系统,它是目前服务器端的主流操作系统,大致需要以下步骤: 加载内核 启动初始化进程 确定运行级别 加载开机启动程序 用户登录 进入 login shell 打开 non-login shell 加载内核 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。
1312 0
+关注
奶berber
这辈子没法做太多事情,所以每做一件事都要做到精妙绝伦
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Mesos,数据中心操作系统的核心
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载