- 博客(10)
- 资源 (5)
- 收藏
- 关注
原创 自己编写操作系统的笔记7
时隔如此多天,终于有了新进展。前两天不是一直不能正确输出吗?今天终于弄明白了,原来在gdt计算地址的时候ds没有指向gdt的段。就这么简单,居然耗费了如此长的时间,不得不说我对于dos下的debug还是不了解这回还是请出了turbo debugger,通过下边实时更新的数据才发现了这个简单的错误。可是现有的debugger都在lgdt的时候瞬间down掉,之后的调试该怎么办?又不是在dos虚拟机上
2009-04-17 18:09:00 469
原创 自己编写操作系统的笔记6
郁闷死了,花了好几天写出的代码,编译也通过了,但是运行时会使dosbox当掉。通过debug,发现问题发生在跳入32位代码段的地方。下午继续研究吧。Title protect2.asminclude protect.inc .386pGDTseg segment para use16 GDT;org OriginStartGDTBegin LABEL BYTE
2009-04-09 11:04:00 492
原创 今天很high
忙了两天,最近研究的事情拉下了。不过今天想起我还有dos的源码,用masm编译的,何不去研究研究?结果不研究不要紧,发现bootsector确实可以编译,具体还是自己下载看吧。不多说,赶紧研究
2009-03-31 23:28:00 314
原创 自己编写操作系统的笔记5
对于保护模式和boot sector理解还是不够深。今天仅仅打算在昨天的基础上打出hello protect mode,发现不能输出……一个字都没输出,仅仅看出jmp $的样子。还是寻址没有弄明白啊。先上代码,继续研究:Title protect.asminclude protect.inc .386p;---------------------------------
2009-03-27 14:21:00 373
原创 自己编写操作系统的笔记4
花费了无数时间,可是仍然在原地打转。 Assembling: protect.asmprotect.asm(49) : error A2024:protect.asm(53) : error A2008: : in directive Jump16(2): Macro Called From protect.asm(53): Main Line Codeprotect.asm(53) :
2009-03-26 11:56:00 945
原创 自己编写操作系统的笔记3
今天研究了很长的时间,效果是显著的,可是结果……还是没有成功。今天主要研究怎么进入保护模式。于渊 的nasm写的总是好像很简单,可是lgdt [GdtPtr],jmp dword SelectorCode32:0,mov [gs:edi], ax怎么也改不出可以编译通过的代码。这是代码:Title ProtectModeTest.asm.386include functio
2009-03-24 20:13:00 602
原创 失望
今天在网上搜索资料,居然不小心找到这样一个地方http://hi.baidu.com/liuqizealot/blog/item/44a359af9856bdfcfaed5066.html不得不说我这两天所有研究的东西都没有超过这个地方所写的文章。这种失落很难说。不过我在今天稍后还是会写今天研究的成果。自己不研究就永远不明白
2009-03-24 11:36:00 281
原创 自己编写操作系统的笔记2
今天再次研究了boot.asm。首先解决昨天的问题:1。我编译好的exe有1009B,用exe2com转换后com文件才497字节,并不是原来的512B。按说这样的0xAA55h不在正确的位置,但是写入后居然可以启动。关于这个我想我找到了解决办法。首先是不再使用exe2bin,直接用UltraEdit打开将近32k的exe,把7e00h前的二进制删除,保存,此时文件正好512b。将后缀
2009-03-22 20:52:00 783 2
原创 自己编写操作系统的笔记1
于渊写的书《自己动手写操作系统》出的可以说很早了(05年)。我虽然当年就买来,但是自己水平太差,只好一直摆在书架上。这回借育才科技创新项目,重新拿起这本书,花费了很多时间研究,终于看到了第五章。 不过有句古话不错,学而不思则罔,思而不学则殆。今天返回头来看看他基于nasm构筑的系统大厦,不免有些感觉头晕,就跟看到了开源程序一样。当然不是看不起,只是一切都跟所学习的不同,难免犯晕。
2009-03-21 20:56:00 757 2
微软MSDNAA发布的Dos6.22
2010-08-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人