操作系统加载相关

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

  

目录
相关文章
|
机器学习/深度学习 机器人 中间件
ubuntu16.04下ROS操作系统学习笔记(五)gazebo物理仿真环境搭建、加载服务端模型数据减少报错
ubuntu16.04下ROS操作系统学习笔记(五)gazebo物理仿真环境搭建、加载服务端模型数据减少报错
676 0
|
Rust Shell Linux
自制操作系统日记(三):加载其他文件执行
上篇中我们成功将软盘数据读取到内存并显示到屏幕上,接下来我们将加载其他的文件并执行文件代码
|
JavaScript 前端开发 Linux
《Linux内核设计的艺术:图解Linux操作系统架构设计与实现原理》——1.2 加载操作系统内核程序并为保护模式做准备
本节书摘来自华章计算机《Linux内核设计的艺术:图解Linux操作系统架构设计与实现原理》一书中的第1章,第1.2节,作者:新设计团队著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2468 0
正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码...
当我在窗体初始化的时候,调用了一个外部的dill时,它就不知什么原因的 抛出一个“正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码”的异常,程序就卡掉了,在网上查了查,相关说明如下: .NET2.0中增加了42种非常强大的调试助手,MDA.Loaderlock 是其中之一。
1817 0
|
8月前
|
Ubuntu Unix Linux
操作系统的最强入门科普(Unix/Linux篇)
下期文章,小枣君会重点聊聊Windows和macOS那条线。敬请关注! 如果大家觉得文章不错,还请帮忙多多转发!谢谢!
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
1042 0
Vanilla OS:下一代安全 Linux 发行版
|
8月前
|
Web App开发 缓存 Rust
|
弹性计算 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot是由阿里云推出的操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行等功能,极大提升了Linux系统的使用效率。用户只需通过简单的命令或自然语言描述问题,OS Copilot即可快速提供解决方案并执行相应操作。例如,查询磁盘使用量等常见任务变得轻松快捷。此外,它还支持从文件读取复杂任务定义,进一步简化了操作流程。虽然在某些模式下可能存在小问题,但总体上大大节省了学习和操作时间,提高了工作效率。
477 2
OS Copilot-操作系统智能助手-Linux新手小白的福音

推荐镜像

更多