
操作系统
POFEI_IS_SHIT
不是我针对谁,在座的各位都是垃圾
展开
-
30天自制操作系统-导入c语言
0.准备 换了一个32G的u盘,不过没关系按照之前的博客30天自制操作系统-Hello OS填写fat32文件格式。对于每一个u盘,要注意逻辑扇区和具体物理扇区的关系:选定59904扇区作为写入磁盘数据的起始,对应的柱面和磁头和扇区写入ipl10.nas然后要更改asmhead.nas。该文件的作用将从保护模式跳至实模式,具体的可以看该博客《30天自制操作系统》学习...原创 2018-08-19 18:21:06 · 788 阅读 · 1 评论 -
30天自制操作系统-Hello OS
0.准备代码使用的书本中的,使用8G的fat32格式u盘 ,不过对于Hello OS程序来言,开头的文件格式不需要也可以,只不过调用bios的输出字符函数(int 0x10)。并未读取u盘内的数据。 fat32文件格式的书写,可以使用winhex工具,先点击工具->打开磁盘->选择你的u盘。然后再查看->模板管理器->选择Boot Sector FAT32->应...原创 2018-08-19 17:37:50 · 4650 阅读 · 1 评论 -
30天自制操作系统-显示鼠标指针
0.准备 克服了之前读取u盘和导入c语言的困难,接下来就是一些c语言和图形界面的编程,只要将作者提供的文件夹里的asmhead.nas更改,然后make img生成的haribote.sys写入u盘,ipl10.bin无须更改,写入u盘就可以1.结果 ...原创 2018-08-26 10:53:53 · 540 阅读 · 0 评论 -
30天自制操作系统-startHaribote
0.准备书中这里将显示代码分到Haribote.nas。org 0xc400载入内存中。 对于每一个nasm生成的bin文件而言都是从0x0000000开始的,也就是说我们可以把bin文件载入到u盘的任意扇区,从上一个博客我们将30697的扇区载入到内存地址为0x8200中,所以我们把haribote.bin文件放到u盘的30698扇区,内存地址从0x8400开始,所以首先将haribote...原创 2018-08-12 16:52:50 · 801 阅读 · 2 评论 -
30天自制操作系统-读取u盘数据
0.准备再读取u盘这一节中,花费了一个月时间才成功,看到网站上有些博主说使用fat12文件格式的u盘,然后改下读取u盘的chs就能成功,有些博主说要用fat32文件格式的,再改chs也可以。我试了很久都不成功,实践证明还是要原理掌握了,才能实验成功。 先说下fat12文件格式的程序中的地址为什么是0xc200,0x4200+0x8000,0x8000是我们指定的内存读取地址,那么0x4200...原创 2018-08-12 16:27:02 · 1944 阅读 · 0 评论 -
查看自己机器是小端还是大端
0.机器选择在存储器中按照最低有效字节到最高有效字节的顺序存储对象,而另一些机器则按照从最高字节到最低有效字节顺序存储。前一种规则最低有效字节在最前面的方式称为小端法。大多数Intel兼容机都采用这种规则。后一种规则最高有效字节在最前面的方式,称为大端法。(csapp2.1.4) 1.可以用联合union的特性(共用内存中的同一地址)查看自己电脑是大端还是小端。#include <stdio.h>原创 2017-06-15 10:24:40 · 4785 阅读 · 0 评论 -
delete的思考
如下代码#include <iostream>using namespace std;int main(){ int *a = new int(3); cout << a << ' ' << *a << endl; cout << b << ' ' << *b << endl; delete a; cout << a << ' ' << *a << en原创 2017-06-25 15:08:39 · 190 阅读 · 0 评论 -
有关栈的小知识
查看自己系统中栈在虚拟地址空间的大致位置:#include<stdio.h>int main(){ int i; printf("The stack top is near %p\n", &i); return 0;}引用于《c专家编程》 在我的ubuntu14.04 64位操作系统中输出 The stack top is near 0x7ffc5643981c原创 2017-06-22 11:31:03 · 265 阅读 · 0 评论 -
30天自制操作系统-第6,7,8天
内容可以看看书,程序就是替换下asmhead.nas,生成的haribote.sys写入u盘的数据起始区域。https://github.com/PofeiShit/os第6天 分割编译与中断处理第7天 FIFO与鼠标控制按下‘A’之后第八天 鼠标控制与32位模式切换...原创 2018-09-02 16:04:20 · 586 阅读 · 1 评论