| Weily's profileWeily的BlogBlogListsNetwork | Help |
|
|
December 28 Inside Human - 11. 基本概念 “人生而平等”、“天赋人权”这类经典语录大家都颇为熟悉了。的确,对于每个人来说,出生了,就已经决定了很多事情了。 当你拿到一台计算机使用的时候,大多数情况下都是已经完全组装好硬件,安装好软件的一台机器。这样,你只要打开电源,没有意外的话,都可以直接使用了。人其实一样的。从physical的角度来讲,人出生了,就相当于一台完全组装好硬件的机器了。当然,这个过程中也许硬件方面还会有所变动,比如掉了课牙齿之类的,不过,除非是有意外,否则的话,基本的东西就一直在那里运行了,就想机器的硬件一样。电子设备都有寿命,人也一样,只不过长短不同而异。包括人身上的各个器官部件,寿命也有不同,也会老化或者接触不良。 硬件方面的东西基本上不能改了,改换的代价不小,所以本文讨论的东西也不会牵涉到多少硬件的东西。不过就想CIH会破坏主板的BIOS一样,软件也会对硬件有所影响,甚至与导致硬件损坏,这也就是mental和physical的联系了。不过这里主要还是讨论一些mental的东西,physical的基本都已经定下了,而一个“人”是否能够正常、稳定、可靠地运行呢,就需要mental和physical的密切配合了,这些也就是我所要讨论的主要问题。 那么,mental方面有哪些东西值得关注呢?也就是作为一个“人”而言,其最基本和最重要的components包括哪些呢?这个放在下面一章“系统架构”里面讨论,这里么,可能就简单地做一些比喻和解释吧。 人出生以后,会直接和间接地接受“教育”,于是,也就会主动和被动地安装“软件”。这些软件,有些是类似于device driver的,也就是会运行于kernel mode的,对系统的运行,甚至于对硬件都会有一些影响的,并且许多软件都运行在这些东西上的。就比如人的处事方式和原则。当然,不排除一些先天的影响,只不过,这些先天的影响也是属于“软件”部分的,也就是刚刚安装好的OS。OS的许多行为都是可以通过软件的方式改变和补充的,人也一样的。有些软件是属于应用的,就比如各种知识和技能,装上了,就会多那么一项功能,没有么,就没有此项功能咯。 其实,人一般情况下也都是一种多任务的操作系统。大多数人会同时面对几件事情的,那些事情都需要你来处理,而他们往往也都有优先级之分。同时,对于人来说,也有时间片的概念。不过,相信没什么人能够达到现在的计算机的处理速度,所以呢,这个时间片不可能是ms级的,也不可能是s级的,人对每个任务dedicate的时间通常至少是以分钟计的。只是这里面的原理一样。有些人会觉得很忙,要在很多任务间切换,不同地时间做不同的事情,还要保证每个事情在某个时间限制内完成,并且尽量做到互相不影响。如果互相之间有影响了嘛,那就说明“同步”机制没有很好地实现,导致了race condition之类的问题,当然,还有可能出现“死锁”的,只是这种现象出现的可能性较小吧,除非是故意为之的。 OK。杂七杂八说了这么一堆,也不知道是否基本表达了我的意思。在我看来,人和计算机一样,也都有有限的“资源”,比如时间、精力等,而我们的OS的目标呢,就是保证能够很好地使用这些资源,不会引起冲突和浪费,这大概是终极目标吧。至于一些细节问题的讨论么,会在下面各部分中一一探讨和说明的。 Inside Human - 00. 起源 看过(或者听说过)《Inside Windows 2000》的人,基本上都知道那本书主要讨论的是Windows 2000这个操作系统的一些基本组件以及实现。从最开始的系统架构,到后面各个章节对于系统中User Mode和Kernel Mode的各个组件的一一探讨,除了没有将其代码罗列出来外,算是讨论地很细致的一本书了。 在看这个的时候,看着看着就想到了作为一个人,其实不就是有一套操作系统在运行嘛。于是,就想起了写些关于这方面的东西,想从分析OS实现的类似角度来分析人,这是我的初衷。也算是这一系列讨论的起源吧。 |
|
|