1.2.1
386
计算机的多任务测试
Tips
要达到多任务
(multitasking)
的环境,除了硬件
(
主要是
CPU)
需要能够具有多任务的特性
外,操作系统也需要支持这个功能喔!
一些不具有多任务特性的操作系统,想要同时执行两个程序是不可能的。
除非先被执行的程序执行完毕,否则,
后面的程序不可能被主动执行。
至于多任务的操作系统中,每个程序被执行时,都会有一个最大
CPU
使用时间,若该工作运作的时间超过这个
CPU
使用时间时,
该工作就会先被丢出
CPU
的运作中,而再度的½入核心工作排程中等待下一次被
CPU
取用来运作。
这有点像在开记者会啦,主持人
(CPU)
会问『谁要发问』?一群记者
(
工作程序
)
就会举手
(
看谁的工作重要!
)
,先
举手的自然就被允许发问,问完之后,
主持人又会问一次谁要发问,当然,所有人
(
包括刚刚那个记者
)
都可以举手!
如此一次一次的½工作给他完成啊!
^_^
多任务的环境对于复杂的工作情况,帮助很大喔!
1.2.3
初次释出
Linux 0.02
探索完
386
的硬件性能之后,终于拿到
Minix
并且安装在托瓦兹的
386
计算机上之后,托瓦兹跟
BBS
上面一堆工程师一样,
他发现
Minix
虽然真的很棒,但是谭宁邦½授就是不愿意½行功能的加强,
导致一堆工程师在操作系统功能上面的欲求不满!
这个时候年轻的托瓦兹就想:『既然如此,那我
何不自己来改写一个我想要的操作系统?』
于是他就开始了核心程序的撰写了。
撰写程序需要什么呢?首先需要的是能够½行工作的环境,再来则是可以½原始码编译成为可执行文
件的编译程序。
好在有
GNU
计划提供的
bash
工作环境软件以及
gcc
编译程序等自由软件
让托瓦
兹得以顺利的撰写核心程序。他参考
Minix
的设计理念与书上的程序代码,然后仔细研究出
386
个人
计算机的效能优化,
然后使用
GNU
的自由软件½核心程序代码与
386
½½的½合在一起,最终写
出他所需要的核心程序。
而这个小玩意竟然真的可以在
386
上面顺利的跑起来~还可以读取
Minix
的文件系统。
真是太好了!不过还不够,他希望这个程序可以获得大家的一些修改½议,
于是他便
½这个核心放置在网络上提供大家下载,同时在
BBS
上面贴了一则消息:
Hello everybody out there using minix
-
I'm doing a (free) operation system
(just a hobby,
won't be big and professional like gnu) for
386(486) AT clones
.
I've currently ported
bash (1.08) and gcc (1.40)
,
and things seem to work. This implies that i'll get
something practical within a few months, and
I'd like to know
what feat
ures most people want. Any suggestions are welcome
,
but I won't promise I'll implement them :
-
)
他说,他完成了一个小小的操作系统,这个核心是用在
386
机器上的,
同时,他真的½是好玩,并
不是想要做一个跟
GNU
一样大的计划!
另外,他希望能够得到更多人的½议与回馈来发展这个操