OS
我是赛赛
辣鸡大学生
展开
-
64位操作系统——(三)应用层
64位操作系统——(三)应用层作者:王赛宇参考列表:主要参考:《一个六十四位操作系统的设计与实现》——田雨**(本章中大量使用了本书中的图片)**《Using as》 ——Dean Elsner & Jay Fenlason & friendsnasm 用戶手册处理器startup.s 常见汇编指令…在上一章中,我们完成了操作系统内核层的框架,之所以说是框架,是因为对于每一个小的分支,我们只是完成了最基础的部分。在上一章的最后一节中,我们创建了一条init进程,在进原创 2020-11-12 01:12:41 · 1375 阅读 · 0 评论 -
64位操作系统——(二)kernel
64位操作系统——(二)kernel作者:王赛宇参考列表:主要参考:《一个六十四位操作系统的设计与实现》——田雨《Using as》 ——Dean Elsner & Jay Fenlason & friendsnasm 用戶手册处理器startup.s 常见汇编指令…前情提要在第一章节中,我们学习、研读了bootloader的代码,bootloader可以被分为两个过程:boot:计算机上电,自检完成后自动执行0x7c00处的boot程序,该程序被限制了大小5原创 2020-11-12 01:09:59 · 2624 阅读 · 3 评论 -
64位操作系统——bootLoader
64位操作系统——bootLoader作者:王赛宇参考列表:《一个64位操作系统的设计与实现》《nasm用户手册》各种博客第一部分: 写一个简单的引导程序并且显示一些字符 org 0x7c00 ; 将程序加载到0x7c00位置,即:指定程序的起始地址BaseOfStack equ 0x7c00; 将CS寄存器的段基址设置到DS、ES、SS中Label_Start: mov ax, cs mov ds, ax mov es, ax mo原创 2020-10-17 01:49:26 · 2156 阅读 · 0 评论 -
操作系统LAB0
操作系统lab0作者:王赛宇操作系统我这里用的是Ubuntu 20.04 LTS,这个不强求吧,从16.04到20.04应该都没问题。这边是双系统,因为早就装好了,所以就不装虚拟机了。C语言sudo apt-get install gcc这个不多谈了,直接给个文件吧test.c#define GLOBAL_NUM 10#include<stdio.h>int glo_var;void funcA(){ printf("funA:"); int a[GL原创 2020-10-14 11:35:58 · 676 阅读 · 0 评论 -
自己动手做OS——Day2
自己动手做OS——Day2我们在昨天做了一个简单的输出一句话的小扇区,现在我们需要继续学习。1 介绍文本编辑器这个我们就不写了,我推荐VSCode,听说notepad++的作者是港独,鄙视他所以不用np++,不多谈了sublime也不错的。2 继续开发接下来,作者想让我们继续学习他写的代码,我们把这些代码直接po上来(我根据我昨天写的代码进行了一些更改,与作者的并不完全相同):; hello-os; TAB=4 ORG 0x7c00 ; 指明程序的装原创 2020-09-02 17:43:12 · 299 阅读 · 0 评论 -
自己动手做OS——Day1
自己动手做OS——Day1先简单说明一下,这里我就只做一些简单记录,不再像以前一样长篇大论写过程介绍了,我这里只写我原来不知道的。1 先动手操作run.batcopy helloos.img ..\..\..\REF\tolset\z_tools\qemu\fdimage0.bin..\..\..\REF\tolset\z_tools\make.exe -C ../../../REF/tolset/z_tools/qemu我的目录结构和作者的不大一样,所以最后写出来的东西也和他的不大一样,这里原创 2020-09-02 01:10:22 · 295 阅读 · 0 评论