摘要: 30天自制操作系统-day8 这次我们更改main.c以及相关文件,生成彩色矩形框,只需要在main.c函数中添加如下代码 main.c #include<header.h> void bootmain(void){ char* point = (char*)0xa0000; init_palett 阅读全文
posted @ 2021-02-03 01:38 WangCoder 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 30天自制操作系统-day7 这次我们更改main.c以及相关文件,生成彩色条纹,与上次彩色条纹区分开 main.c #include<header.h> void bootmain(void){ //注意这里的函数名字为bootmain,因为在entry.S中设定的入口名字也是bootmain,两 阅读全文
posted @ 2021-02-03 01:07 WangCoder 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 30天自制操作系统-day6 这次我们利用C语言,生成彩色条纹,编辑main.c文件 #include<header.h> void bootmain(void){ //注意这里的函数名字为bootmain,因为在entry.S中设定的入口名字也是bootmain,两者要保持一致 char* poi 阅读全文
posted @ 2021-02-03 00:01 WangCoder 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 30天自制操作系统-day5 这一节我们引入了C语言,终于告别了汇编,使用C语言给我们带来了极大的便利,因为我们大学都是从学习C语言开始的。但是我们的系统现在还不完全是使用C原因编写的,还是会带有一些汇编语言,那么如何将C语言与汇编一起编译呢 1、将start_C.tar放在自己的linux环境下进 阅读全文
posted @ 2021-02-02 23:20 WangCoder 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 30天自制操作系统-day4 这一次我们使用简单的汇编语言进行操作,上节中我们还是使用DB/DW/DD指令直接操作的二进制数,其实相应的指令在汇编语言中都有对应的助记符如MOV/ADD等,这一次我们使用助记符帮我们完成启动区的制作。 这一节还有一个地方需要注意那就是这次我们将我们的启动区放置到内存的 阅读全文
posted @ 2021-01-07 00:34 WangCoder 阅读(181) 评论(0) 推荐(0) 编辑
摘要: ####30天自制操作系统-day3 前2天我们分别使用了直接使用二进制编辑器和简单的汇编指令生成了img文件,今天我们尝试一下使用稍微复杂一点的汇编指令 ####os.asm文件内容如下: ; hello-os ; TAB=4 ; 以下是FAT12标准软盘专用代码 DB 0xeb, 0x4e, 0 阅读全文
posted @ 2021-01-02 23:17 WangCoder 阅读(255) 评论(2) 推荐(0) 编辑
摘要: 30天自制操作系统(linux)-day2 使用简单的汇编语言 首先Centos环境安装nasm,使用vim工具编辑一个os.asm文件,文件内容如下: DB 0xeb, 0x4e, 0x90, 0x48, 0x45, 0x4c, 0x4c, 0x4f DB 0x49, 0x50, 0x4c, 0x 阅读全文
posted @ 2021-01-02 22:30 WangCoder 阅读(207) 评论(0) 推荐(0) 编辑
摘要: ####30天自制操作系统(linux环境)--第一天 我是在CentOS的环境上面实现的,使用ubuntu的环境也是类似的 #####第一步:因为要对二进制文件进行编辑,所以安装二进制编辑器hexedit(当然其他的也可以),安装命令 yum install hexedit #####第二步:对生 阅读全文
posted @ 2021-01-02 21:38 WangCoder 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 30天自制OS(linux环境)--第一天 我是在CentOS的环境上面实现的,使用ubuntu的环境也是类似的 第一步:因为要对二进制文件进行编辑,所以安装二进制编辑器hexedit(当然其他的也可以),安装命令 yum install hexedit 第二步:对生成的软盘镜像进行仿真运行,使用虚 阅读全文
posted @ 2020-12-29 01:58 WangCoder 阅读(193) 评论(0) 推荐(0) 编辑
摘要: Socket通信 我们知道两个进程如果需要进行通讯最基本的一个前提就是能够唯一的标示一个进程,在本地进程通讯中我们可以使用PID来唯一标示一个进程,但PID只在本地唯一,网络中的两个进程PID冲突几率很大,这时候我们需要另辟它径了,我们知道IP层的ip地址可以唯一标示主机,而TCP层协议和端口号可以 阅读全文
posted @ 2020-10-23 22:41 WangCoder 阅读(149) 评论(0) 推荐(0) 编辑