第九天和第十天的内容为解决鼠标和图层的刷新问题,以及内存分配问题,这里的内存分配我们采取的是最简单的最先匹配原则,将整个内存由申请的进程开始逐渐的截取成不同的段。这样产生的问题可能是产生很多的外部碎片,同时我们强制性必须以页为大小(4KB)进行分配,这样的话就很可能会产生内部碎片,关于内存的管理我们在之后再改进。

下面让我们看一下这两天的成果:

下两图为对内存进行分布后的执行结果,对的,其实什么差别也看不出来:

30天自制操作系统笔记(九十)_内存分配

30天自制操作系统笔记(九十)_图层_02

下面两图对显示控制进行了改进,结果第二张图中的悲剧就产生了,究其原因是该的地方不是很对,在后面的图中显示了解决的方法:

30天自制操作系统笔记(九十)_内存分配_03

 

30天自制操作系统笔记(九十)_javascript_04

下面的图中显示了修正后的结果,主要是因为显卡内存所对应的内存区,写错了内容,改过来就好啦:

30天自制操作系统笔记(九十)_内存分配_05

30天自制操作系统笔记(九十)_javascript_06

下面的图为解决了鼠标是方块的问题,其实只要将鼠标的填充颜色为'.'的改为99就可以啦。

30天自制操作系统笔记(九十)_内存分配_07

下图为系统的最终的运行结果,当然其实这不是最终的运行结果,但是因为其在优化显示和刷新算法方面所以在外观上是看不出差别的。

30天自制操作系统笔记(九十)_内存分配_08

谢谢^_^