操作系统(二)从图灵机到现代计算机 |
您所在的位置:网站首页 › 图灵机计算过程 › 操作系统(二)从图灵机到现代计算机 |
上一篇文章,我们初步了解了操作系统在现代计算机中充当的角色。 操作系统(一)什么是操作系统 一:从白纸到图灵机图灵机是英国数学家A.C.图灵于1936年提出的一个模型。 小孩子算数 在聊图灵机之前,我们先来想象这样一个场景: 一个小孩想要计算一条算式:2 + 4 = ?。 于是小孩在大脑里面想要计算的是2 + 4,然后把“2 + 4”写到白纸上。然后使用他的手指数数,左手摆出了两个手指,右手摆出四个手指。于是数两个手的手指一共是六个。最后把结果6写到白纸上。 好,以上就是小孩执行一个计算的 全过程。 图灵机 图灵想到的是如何使用机器来模拟人类计算一道算术题的过程。 他创造了这样一个机器,一个控制器,一条纸带。控制器扫描纸带上的“2 + 4”指令,然后控制器根据自身的一套机制,算出了“2 + 4”的结果,并把结果“6”打印到纸带上。 但是这样的图灵机不够灵活,只能做单一的运算,例如例子中的加法运算。
1946年,冯诺依曼提出了一个伟大的想法:将程序和数据存储到计算机内部的存储器中,然后把程序载入到控制器、运算器里面进行解析执行。如图: 计算机执行的时候,首先把程序存储到存储器中,然后用一个指针指向某个程序,控制器和运算器便会取程序地址进行执行。执行完了第一个程序后,指针接着指向下一个地址,继续通过控制器和运算器进行执行,直到执行完所有任务。 那么概述来说,计算机的运行原理是什么呢? 取址执行。 四:现代计算机,开机!上面通过计算机的一些历史和发展,我们了解了计算机的大概情况。接下来继续探索计算机是如何开机的。 打开计算机电源,计算机执行的第一句指令是什么? 对于X86架构的Intel计算机来说,内存有部分区域是已经固化的,叫做ROM BIOS映射区,地址为0xFFFF0,其中CS = 0xFFFF,IP = 0x0000。(BIOS,全称basic input output system,即基本输入输出系统。) 备注:这里其实就是冯诺伊曼的思想的应用,取址执行,首先要有执行程序的地址,在计算机刚上电的时候,内存是空的没有数据和地址的话,计算机就会无从执行,所以把一部分内存固化用作开机使用。 1.从按下电源键到进入引导扇区 开机时,X86架构的计算机CPU处于实模式,CS = 0xFFFF,IP = 0x0000。CS左移4位,加上IP,等于0xFFFF0,这正好是BIOS区域。计算机执行BIOS区域的代码检查RAM、键盘、显示器、硬盘、主板等硬件。只有所有硬件都正常运作,才进入下一个环节。将磁盘的0磁道扇区读入一个512字节的扇区(该扇区被命名为引导扇区)。CS = 0x07c0,IP = 0x0000,CS左移4位加上IP,得到地址0x7c00,改地址正是引导扇区的地址。CPU执行内存0x7c00,即引导扇区的代码。2.引导扇区存放的代码 引导扇区就是启动设备的第一个扇区,大小为512个字节(开机时候按住del键可以进入启动设备界面,这个地方就是我们平时进入PE系统或者光盘启动的入口!)。其中,启动设备信息会被设置到CMOS,CMOS用来存储实时钟和硬件配置信息。 所以硬盘上的第一个扇区存放着开机后的第一段我们可以控制的程序。下面接着看扇区里面的代码是怎么样的。 3.bootsect.s 上面的代码执行完后,会执行到以下代码: 4.读入setup模块后的代码模块:ok_load_setup 由于篇幅原因,后面我们继续了解和学习操作系统的system模块。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |