2006年1月12日星期四

我越来越痛恨模式(pattern)了

原因:
pattern不是本来就有的东西。
pattern是个人的"方言"。
我的爱好,没有模式,无招无剑。
如果会形成一点模式,那也是不断进化的。
不管是编写什么样软件。
-----

2006年1月11日星期三

难以进展的OS

写操作系统对我来说真是痛苦的东西呢.
实现算法我觉得还好,笨一点的算法也能转起来.还可以不断改进.
最可怕的是硬件的驱动.我觉得是操作系统最本职的任务.
但是文档做法不好找.一方面原因是做我这样尝试的人少.
(谁会去写操作系统作为业余爱好?)
虽说一切都在代码中,open source的os,很多,linux, bsd, opensolaris,minix...
可读性稍有差别,但是还是不太现实.最好有文字结合代码的步骤.
还要对应多种厂商的硬件,再加上一点程序的框架技巧的迷惑.
而且调试不太方便.设想调试显卡或者什么pci设备,在例如apic,usb什么的,
原理我都不太明白,(同样缺乏我看得懂得文档),有问题怎么调试?
就是硬盘boot,然后到x86保护模式,然后搞个多任务环境都让我
重启,改cmos里的启动顺序,超过100次.现在还没有完美解决.可能要用TSS比较好.
看上去是艰巨而乏味的工作了.如果简单一些就有趣了. 唉....
-----

2006年1月4日星期三

新年随想

元旦放了三天,我在家里,一个人,有点冷,有点饿。
我写操作系统。想了很久了。这次利用多余的一块硬盘。
写了bootsector, 然后进入保护模式, 然后设置中断,
设置了gdt, idt, 然后设置了timer, irq0, 然后写了
多任务,试验了还可以, 同时开了4个任务, 每个任务
下屏幕上显示跳动的字符。 他们看上去在同时跳动。
用的是flat mode,只是为了访问4G的内存地址空间。
interrupt的stack top就是eip, 在irq0的处理中修改
他就可以实现多任务了。
接下来,研究pciide, 为了是在保护模式下访问硬盘,
什么dma, pio, 还不太明白。相关的资料也没找到。
一切尽在代码中,看了linux, openbsd, netbsd, opensolaris,
等等都看不懂。还是minix写得比较简单,至少找到了port out,in。
希望参考着可以访问硬盘。
什么算法都是多种多样的。但是操作系统最主要的是提供
硬件的接口。 还有显卡,网卡,声卡,usb. 由于没找到
合适的资料。 实现他们还是看不到希望。
其实cpu+memory+usb, 如果硬件都是用usb2.0, 不管是
显卡还是网卡还是硬盘, 那么开发系统会简单一些。
我有些害怕计算机了,要是深入这些细节,那么就会接触硬件
到时候可能还想自己设计芯片。那么我的一辈子就要累死了。
在想想工作的大部分时间用java开发信息系统。他和这些
在脑子中的形象是迥然不同的。虽然都是计算机方面的。
我想社会就像是一盘棋吧。每个人就是棋子。虽然是自由的,但是
是受到约束。就像一匹马,只能是走马步,士也只能在九宫格里斜着走。
不可能飞过去将军,也不能连走几步。整盘棋的输赢也是随着时间
很难逆转的。
人却不知道自己是什么子儿,是车呢还是炮。尤其是不愿意相信自己就是
一个兵。
新的一年里,寻找操作系统的增长点、突破口。
认识自己。尽量躲避灾难。还是那个词--养久


-----

博客归档

neoedmund's shared items

我的简介

ZIP Code File