看到这一幕,林鸿脸上露出笑容。
这个画面,才真正意味着,blinx在天眼里面正式运行成功。
之前所显示的内容,只是他手动对视网膜屏进行操作才出现的结果,就好像,他用手在屏幕上画了了一个图案。
而现在,则确确实实地是系统中所显示出来的内容,这个内容,是可以随时很方便地进行修改的。
并且,这两个词汇交替进行显示,意味着blinx系统中的多进程功能正在运行,也就是说,这个系统虽然简单,但至少已经具备了多任务处理的能力。
被加载到内存中执行的程序实例,称为“进程”,一个进程从建立到终止,全由操作系统的核心掌控。
操作系统的内部有一个进程队列,针对进程的状态和需求,根据不同的算法安排执行的顺序。每个进程会分配到一小段cpu时间,该段时间结束cpu马上切换到其他进程执行。
像这种不停的在各种进程之间切换执行(即上下文切换)的系统,称为多任务操作系统。
有多任务,自然就有单任务,dos系统在运行在本地实模式的时候,就是单任务的,也就是说在同一时刻,只能运行一个进程。要想运行其他程序,必须先将当前程序退出。
一般来说,多任务是现代操作系统的一个重要特征,当年linux开始编写的时候,首先实现的就是这个功能。而林鸿现在所做的,只不过是重复走了这一个过程而已。
证明了这一步没有问题,林鸿便开始将文件系统模块和内存管理模块给挂载上去。
由于这是微内核的结构,要挂载这些模块,系统连重启都不要,直接进行挂在就行了。
将文件系统挂载上去之后,林鸿测试了一个简单的文件读取和写入操作,进行了文件的创建,重命名,朝里面写入数据,并且将其显示出来。当然,这些操作,林鸿使用的并不是系统调用命令,而是像之前那样,完全手动进行
将这一步完成之后,他便开始继续完善他的shell,也就是字符终端的外壳程序。
他现在好像又回到了当初和linus一起编写linux的时候的时期,那个时候是将一个开源的bash移植到linux里面,而现在,他也大量参考了bash的shell外壳程序,开始编写更为复杂的系统调用命令。
shell是操作系统里面非常重要的东西,就好像是机床里面的母床一样,有了它,就可以在里面建立一个生产环境,极大的加快以后的系统编写进度。一旦将shell完成,就好像从0直接跳到了100,有了一个质的飞跃。他在里面实现诸如ls,move和copy之类的命令,就变得像是做1+1之类的算术题这么简单。
"target="_blank">www.ysxiaoshuo"target="_blank">http://www.ysxiaoshuo”>"target="_blank">www.ysxiaoshuo