• 「操作系统」《自己动手写操作系统》1.2 “十分钟”完成的操作系统


    在笔者上一篇的文章《1.1前期准备工作》中有详细介绍前期准备工作

    笔者吐槽:虽然作者说的是十分钟完成的操作系统,但是笔者却在纠结了很多个十分钟后终于纠结完了,希望笔者的经历能够帮到大家。

    一、路径配置

    需要在建立一个纯英文路径进行存储我们自己做的操作系统,不要问我为什么

    笔者的路径是“G:OSOne OSchapter1a”

    二、编写操作系统

    1.选择一款自己喜欢的汇编代码编辑器,笔者用的是TextPad,也可以用记事本

    2.“G:OSOne OSchapter1a”路径下建立“boot.asm”文件

    3.用汇编代码编辑器打开“boot.asm”文件,写入以下代码

    org 07c00h ; 告诉编译器程序加载到7c00处
    
    mov ax, cs
    
    mov ds, ax
    
    mov es, ax
    
    call DispStr ; 调用显示字符串例程
    
    jmp $ ; 无限循环
    
    DispStr:
    
    mov ax, BootMessage
    
    mov bp, ax ; ES:BP = 串地址
    
    mov cx, 16 ; CX = 串长度
    
    mov ax, 01301h ; AH = 13,  AL = 01h
    
    mov bx, 000ch ; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮)
    
    mov dl, 0
    
    int 10h ; 10h 号中断
    
    ret
    
    BootMessage: db "Hello, One OS!" ; 想要开机后在屏幕上显示的字符串
    
    times  510-($-$$) db 0 ; 填充剩下的空间,使生成的二进制代码恰好为512字节
    
    dw  0xaa55 ; 结束标志

     

    4.保存并关闭“boot.asm”文件

    三、编译操作系统

    1.打开已安装好的NASM目录下的 asmpath.bat

     

    2.将路径改到“boot.asm”目录,并将“boot.asm”文件编译成“boot.bin”文件

     

    四、制作虚拟软盘

    1.将之前下载的光盘资料中Tinixchapter1aTINIX.IMG文件拷贝到存放“boot.asm”的目录下并改名为“One OS.IMG”,笔者的目录是“G:OSOne OSchapter1a”

    2.打开之前安装好的FloppyWriter.exe,做以下操作

     

     

     

     

    五、运行操作系统

    1.为虚拟机添加我们刚才做好的虚拟软盘

     

     

     

    2.双击启动虚拟机

     

     

    好了,我们花了很多个十分钟终于做好并启动了自己做的操作系统

    原创文章,转载请注明出处

    http://www.cnblogs.com/777777-716/p/5003964.html 

  • 相关阅读:
    myEclipse,web项目连接数据库
    jquery模拟手机短信发送
    myEclipse创建web项目及运行
    总结SUMMARY
    pthread
    NSThread线程对象
    刀哥多线程自动释放池autoreleasepool
    仿SDWebImage
    多线程基本概论multithread
    多线程异步加载图片async_pictures
  • 原文地址:https://www.cnblogs.com/777777-716/p/5003964.html
Copyright © 2020-2023  润新知