游戏攻略网
当前位置: 首页 游戏攻略

少儿编程系统需求规定(操作系统是怎么回事儿)

时间:2023-05-26 作者: 小编 阅读量: 1 栏目名: 游戏攻略

吴进提出了问题。这一次,陈小速没有马上开口,而是埋头思考起来,吴进也没有打扰他。程序本身是一组指令的集合,一般是以文件的形式存在磁盘上。当程序被选中执行时,会进入作业状态。进程有三个状态,分别是就绪态、运行态和等待态。需要注意的是,运行态有可能转到就绪态或等待态,但等待态只能转为就绪态。这还是得益于CPU超快的计算能力,操作系统在一秒内就可以将进程进行亿次的切换。陈小速回过神来,提出了这个问题。

什么是操作系统

“吴大哥,什么是操作系统?” 陈小速急切地想知道答案。

吴进并没有直接回答这个问题,而是问道:“小速,你有没有想过,如果没有操作系统,程序会怎么运行?”

“没有操作系统?那程序能运行得起来吗?” 陈小速觉得有些不可思议。

“怎么不行呢?” 吴进说着笑了起来,“还记得我们讨论CPU的结构与指令吗,程序不就是一条条指令的集合吗?”

“啊,对,想起来了。” 陈小速拍了拍脑袋,接着说,“但那样的话,计算机就很难操作和使用了啊。比方说我要做最简单的加法运算,就需要把四条指令装载到内存里,然后让CPU去计算。但一次只能执行一个程序,要执行另一个程序,那还得断电把数据擦除,再加载新程序。太麻烦了吧。”

“对嘛,你这不是道出了操作系统的一个本质特征吗?它就是机器与应用之间的界面,也可以叫做接口。当然,还可以看成是机器与人之间的窗口,微软的Windows可谓取了个很贴切的名字。”

“嘿,吴大哥,我明白你的意思了,” 陈小速兴奋起来,“就是说操作系统向用户屏蔽了对硬件操作的细节,这让普通用户可以专注于做自己的工作。那这么说,操作系统对于计算机的普及来说太重要了啊,没有它的话,计算机的能力发挥不出来啊。”

“非常正确,接下来我们说一说操作系统的两大核心功能吧。”

进程管理

“还是先从咱们上面讨论的内容里,提一个问题吧。就是小速你刚才说的,如果没有操作系统,那么程序只能单独运行,而且切换也很麻烦。那么有了操作系统,程序可以怎么运行呢?” 吴进提出了问题。

这一次,陈小速没有马上开口,而是埋头思考起来,吴进也没有打扰他。过了十分钟,陈小速才抬起头来,有些犹疑地说:“我胡乱说两句啊。就是操作系统可以先把磁盘上的程序文件加载到内存里,然后交给CPU去一个接一个地执行,像排队一样,是吗?”

“原理上是没错,但小速你用电脑的时候,会不会一边浏览网页,一边听音乐呢?”

“肯定的啊。对啦,问题就在这儿了,CPU一次只能让一个程序执行,多个程序同时在运行,这是怎么做到的?” 陈小速马上意识到了这个问题。

“这就是操作系统的一个基本功能了,就是进程管理。” 吴进开始详细说明。

程序本身是一组指令的集合,一般是以文件的形式存在磁盘上。当程序被选中执行时,会进入作业状态。作业过程是指程序被操作系统纳入进程管理中,可能是在执行或者待执行状态,直到程序完全退出,作业过程也就终止了。

作业如果被操作系统选中加载到内存中,那么此时就可以称之为进程了。进程顾名思义,就是正在运行中的程序,它要么是占据CPU在执行,要么就是等待CPU被释放。

进程有三个状态,分别是就绪态、运行态和等待态。就绪态指的是资源都已经得到满足,就等着占用CPU进行运算了。而在CPU上运行的,则就是运行态。当产生中断或者有I/O请求时,进程会转到等待态,一直等到资源满足了,才再次进入就绪态。

需要注意的是,运行态有可能转到就绪态或等待态,但等待态只能转为就绪态。也就是说,进程必须在就绪态之后,才能进入运行。

有了进程管理,多个程序在宏观上就可以有同时运行的效果。这还是得益于CPU超快的计算能力,操作系统在一秒内就可以将进程进行亿次的切换。那么对于人类用户来说,使用计算机的体验就是并行工作,哪件事都不会耽误。

吴进说着就画下了进程调度的流程图。

进程调度

内存管理

看着上面那张图,陈小速如获至宝,一直琢磨个不停。吴进说:“好了,小速你回去以后可以有针对性地找资料,去研究进程调度的细节了,我们接下来再讨论操作系统的另一个核心功能吧,就是内存管理。”

“啊,对,内存管理又是干什么的?” 陈小速回过神来,提出了这个问题。

“在回答这个问题之前,我先说明一下内存的物理特性。你攒机的时候最关注的内存指标就是容量是吧,例如16G、32G。它的单位是字节,一个G是1024M字节,一M是1024K字节,一K是1024字节,一个字节是8位,你大概可以知道这能容纳多少数据。

1G = 1024M1M = 1024K1K = 1024Byte1Byte = 8bit

“内存条本身就像按顺序排列的一列水桶,每个桶子都有一个地址,而且可以存放数据。CPU可以通过地址访问任何水桶,也就是任意一个内存的地址,进行数据的读取操作。”

陈小速点着头,这个比方很形象,很好理解。

吴进接着说:“那么,我就要先提出一个问题了。为了简化讨论,我们假设现在有一台机器,它的内存空间是1G。而我们这台机器上会同时运行两个程序,每个程序都要使用1G的内存空间,应该怎么办?”

“怎么办?这个没办法运行吧……” 陈小速脱口而出了这句话,不过看着吴进温和的笑容,他知道这个回答肯定不对,挠了挠头,又自己想了会。

陈小速有些信心不足地开口说:“吴大哥,我猜可能也是类似进程管理吧。例如CPU只有一个,而为了让多个程序同时运行,就不停地来回切换,像这样的管理方式?”

“从原理上来看,其实差不多。” 吴进先表示了肯定,“这在操作系统里,叫做虚拟内存技术。它的原理就是让每个程序都认为自己可访问的空间是1G,而且内存地址都是一致的。只有在实际运行的时候,才会将程序所需的指令代码和数据加载至物理内存中。

“当程序要使用内存时,它访问的是虚拟内存地址,而操作系统会将虚拟内存映射至实际的物理内存。通过这种方式,程序就不必考虑实际运行时,还有多少可用物理内存了,只要专注于自身的逻辑实现就好。”

“啊,这个原理我弄明白了。” 陈小速一边点头一边说,但他也想到了一个问题,“那操作系统是怎么把物理内存分配给程序的呢?是一次给一大块,还是一点一点给?”

“这个问题很好,” 吴进笑着说,“现代操作系统对于内存分配通常都是基于分段与分页式调度管理。它们也是实现虚拟内存技术的基础。操作系统会将内存按照固定大小分成块,这样的块被称为帧。比方说一帧的大小是4KB。”

陈小速在脑海里浮现出拉开相机胶卷的画面。

“那么好了,程序运行需要占用内存,那操作系统就将程序也分片放在4KB的空间中,这称为页。借助虚拟内存技术,程序运行时的页空间是连续的,但映射到帧上是可以不连续的,小速你看下这张图。” 吴进说着,又画了一张图。

分页管理

陈小速一看就明白了这个意思,吴进接着说:“那分段管理呢,就是将若干页合并起来,成为一个段,段的大小也是固定的。逻辑上可以按照子程序划分,分配段内存给它。然后在子程序内部,又按照分页方式进行管理。”

陈小速不住地点头,又问道:“那段大小是固定的,会不会在分配的时候会造成浪费呢?”

“你说得很对,” 吴进发现陈小速果然注意到了这一点,“所以原理说起来简单,但操作系统在实现的时候就有许多细节要处理好。那就要通过算法来做到,将浪费减小到最少,同时还要保证稳定性和健壮性。”

结语

“小速,今天我们学习了操作系统两个最核心的功能,进程管理与内存管理。其他还有存储管理的文件系统、IO系统,用户界面等方面。希望今天给你开这个头,你回去以后再继续学习,逐渐理解操作系统的主要功能和设计哲学。”

“好的,吴大哥。这学习理论和编程实现之间,是不是就像是知道牛顿三大运动定律,和造出能飞上天的火箭之间的区别一样啊?” 陈小速搔着脑袋问。

吴进不由得哈哈大笑,“真的可以这么说,但任何一个火箭工程师,也必须从学习三大定律开始,对吧?”

“没错,那我这就回去好好把基础理论学好!” 陈小速下定决心要啃下操作系统的知识来。

    推荐阅读
  • 贾岛经典诗40首(大唐诗人贾岛经典五言诗作)

    题李凝幽居唐代:贾岛闲居少邻并,草径入荒园。寻隐者不遇唐代:贾岛松下问童子,言师采药去。剑客/述剑唐代:贾岛十年磨一剑,霜刃未曾试。忆江上吴处士唐代:贾岛闽国扬帆去,蟾蜍亏复圆。樵人归白屋,寒日下危峰。送无可上人唐代:贾岛圭峰霁色新,送此草堂人。麈尾同离寺,蛩鸣暂别亲。

  • 兴化方言小伙子怎么说(放屁用手揞wǎn)

    我们把一只手掌向上弯曲称为“碗”,把两只手掌并在一起向上弯曲也称为“碗”。用“放屁用手揞”形容这些弱智的措施虽有不雅之嫌,但却大有解气之妙。支书又重新物色了一位“李铁梅”,把女知青安排回南京过春节。兴化水田多,农人的许多农活都是在湴田的过程中完成的。湴河无疑是艰难的、危险的。对湴河的这种理解,在泰州人中是很普遍的。大队革委会给他戴了一顶破坏集体财产的帽子,要他接受群众的批判。

  • 半夜睡觉感觉抖是长个吗(为什么睡觉时身体会突然)

    当身体中的血钙低时,确实会导致肌肉、神经兴奋性亢进,从而引起痉挛抽搐。正确的睡姿可以有效减少临睡肌抽跃症的发生,一般情况下,多数人适宜以右侧卧位为宜。

  • 韩式酸菜怎么做(做泡菜的方法)

    韩式酸菜怎么做大白菜1.5kg、苹果个、梨1个、辣椒面150g、糯米粉50g、蒜50g、姜50g、盐50g。在盆内均匀的给白菜撒上盐,腌制12小时。苹果、梨去皮、去核,分别在榨汁机中打成汁备用。姜、蒜切末备用,小锅内倒入糯米粉。倒入苹果汁、梨汁,用中火熬成糊状。糯米糊放凉后,加入辣椒面、姜末、蒜末、搅拌均匀。腌好的白菜,挤去水分。将泡菜放入无油、无水的密封容器里,再放入冰箱,发酵3-5天即可。

  • 什么是什么什么什么的家(什么是什么什么什么的家举例)

    下面希望有你要的答案,我们一起来看看吧!什么是什么什么什么的家草丛是蟋蟀的家。大树是鸟儿的家。池塘是青蛙的家。大海是鲨鱼的家。森林是老虎的家。天空是星星的家。大地是小草的家。沙漠是骆驼的家。云朵是大雨的家。草原是羊儿的家。

  • 早上起床为什么水肿(早上起来水肿的原因)

    早上起床为什么水肿?我们一起去了解并探讨一下这个问题吧!建议患者可以到医院进行肾脏B超的检查,以及肾功能的相关检查可以明确诊断。第二种是由于心脏疾病引起来的,心脏疾病就会引起心功能不全,会导致心功能的心脏回血受限,引起患者体内血液淤积,从而导致局部出现水肿的现象,建议患者到医院检查,比如说心电图、心脏彩超、心肌酶谱等相关检查,如果发现是心脏疾病引起来的,建议及时进行相关治疗,避免引起严重的并发症。

  • 南京生育险最迟多久去办理 南京生育险多久可以拿到

    用人单位应当自用工之日起三十日内为其职工向社会保险经办机构申请办理社会保险登记。南京用人单位少报、漏报缴费基数怎么办拓展阅读:用人单位职工缴费基数如何确定?南京五项社会保险采用统一的缴费基数。职工当年度缴费基数为本人上一自然年度月平均工资收入。对职工工资收入超过缴费基数上限的,超过部分不计入缴费基数;对职工工资收入低于缴费基数下限的,按下限确定缴费基数。

  • 天猫超市怎么兑换超市卡(天猫超市卡怎么变现成现金)

    天猫超市卡/享淘卡有50面值,100面值,200面值,300面值,500面值,600面值,1000面值。因此我们在去购物的时候,都是有很多人在去进行使用的。但是现在我们的购物卡还有了另外的处理方式,我们可以将我们手上的购物卡去进行回收,京回收平台就是我们现在去进行回收平台,回收的速度快,价格还很高。

  • 承包方式一般有哪三种(承包方式都有哪三种介绍)

    工程总承包的具体方式、工作内容和责任等,由业主与工程总承包企业在合同中约定。对于一些工程较大的项目,发包人可能分别与几个勘察人、设计人、施工人分别签订若干份独立的勘察合同、设计合同、施工合同,各承包人各自独立完成承包工作。联合承包《建筑法》第二十七条第一款规定:“大型建筑工程或者结构复杂的建筑工程,可以由两个以上的承包单位联合共同承包。共同承包的各方对承包合同的履行承担连带责任。”

  • 摇到的车牌可以过户给家里人吗(摇不到号把奥迪车挂在别人名下)

    今年4月9日,两人完成了过户手续,就这样,车某做了陈某的专职驾驶员。接警后,余杭区公安分局临平刑侦中队多方调查取证,经过半个月的侦查,将车某、江某和何某3人抓获。因涉嫌诈骗罪,3人均被余杭警方依法刑事拘留,案件还在进一步侦办当中。至于陈某的那辆奥迪A6L,警方表示,因为买车人是通过二手车市场正常购得,并且对车某等人的诈骗行为并不知情,属于善意取得,无法追回。