而底层系统开发·则需要深入了解操作系统的底层运行原理,需要知道硬件的具体结构,用软件的方式去操作硬件。
吴东花了一天的时间在图书馆寻找答案,最终给出的回答是后者。
于是,林鸿便给了他一个项目做,让他用软件的实现一个简单的虚拟机,模拟8086这一16位的cpu功能。
这个虚拟机软件·运行于操作系统的应用层,但是它却模拟一个基于xb6的标准pc环境。这个环境和普通的计算机一样,都有芯片组、cpu、内存、显卡、声卡、网卡、硬盘、光驱、usb控制器、scsi控制器等等设备,提供这个应用程序的“窗口”就是虚拟机的显示器。
在这个虚拟机中,可以进行系统的安装,例如直接将wwndaws或者inux系统安装到里面,操作系统一样正常运行,它们会以为自己运行在真实的硬件上面。
当然·这是一个非常复杂的东西,要想将这些功能全部实现出来,凭吴东一人之力·根本不可能完成。
林鸿只是让他实现对80860pu的模拟,以及简单的几个指令集而已。
例如,将cpu模拟出来之后,实现简单的add指令,在里面实现整数的相加。
要想实现这个虚拟机,就必须要对计算机组成和原理非常了解,尤其是cpu的具体结构,例如cpu由哪些寄存器组成,这些寄存器分别充当什么作用,数据是如何在这些寄存器中流动…···等等等等。
这个过程一般人还真不知道如何去做。
不过没关系·林鸿已经将要学习的知识,以及如何编写这个虚拟机的步骤全部写成了一个清单,吴东只要按照这个清单去学习就行了。
吴东肯花心思钻研,学习东西来非常快,但是真正要想将清单上面的只是全部掌握却并不是很容易的事情,这段时间·他注定需要经常泡在图书馆里面了。
他已经决定了,放寒假之后也不回去,直接留校。一方面节省路费开支,另外一方面专心学习相关知识,将这个虚拟机给做出来。
当听到张达的话之后,李奇也摇了摇头:“我也不去了,想在寝室睡一觉。”
张达一听不由说道:“老四,你不想去也得去,老大离开的时候交代过了,你之后的减肥计划由我帮忙监督执行,他说如果在他回来之前,你如果不减掉十斤,拿我试问。”