计算机的组成以及OS的发展历程

    根据冯诺依曼提出的体系架构,计算机基本上可以分为五大部件。这五大部件分别为运算器,控制器,内存,输入设备与输出设备,其中运算器与控制器是CPU的重要组成部分。下面分别介绍这5大部件:

    CPU:运算器、控制器、寄存器、缓存

        运算器与控制器的主要目的就是处理计算二进制数据,里面含有制造商提供的微指令集,包括精简           指令集与复杂指令集。

        寄存器可以暂存CPU的一些数据,例如多个加数相加可以暂时存放,存放下一条指令的指针等。

        缓存的主要目的是为了提高计算机的性能,因为CPU的频率要远远高于内存,这样从某种程度上说是在浪费CPU的资源,因此加缓存会增强对CPU的利用率。

        

    内存:内存也叫RAM,CPU的数据获得就是从内存中获得的。因此从某种程度上说内存的大小与性能对计算机的整体性能有着很大的影响。内存的基本存储单元为cell,大小8bit(1B),内存在计算机中的编址是平面编址的,每一位都会有唯一的地址与之对应。CPU与之是有一定关系的,例如32位的CPU,它一次运算的最大数据量是2^32,即4GB,所以4GB的存储空间即够用。

    输入输出设备:输入设备主要就是鼠标键盘那,输出设备主要就是显示器方面的,他们不是计算机的核心部件,主要是输入命令与看到执行结果的接口。

    以上为计算机的硬件部分,但是光有硬件是不行的,还要有软件,没有软件,那么就是一堆废铁。那么计算机程序又有怎样的发展:

    1、穿孔纸带时代:程序员将一段程序写在纸带上并发给计算机,但是这种方式实在太慢了,而且计算机一次只能执行一个任务,大大浪费了CPU。

    2、批处理系统:程序员将多段程序写在磁带上,用分隔符隔开,例如程序1$$程序2$$……,虽然在某些程度上会有一些改善,但是计算机只能一个程序一个程序的执行,效率还是没有最大发挥。

    3、多任务操作系统:多任务操作系统是为了实现同时处理多个任务,虽然这是不可能的,但是,他们是这样实现的。

    @1:CPU时间分片:例如将CPU的时间分为几片,第一片执行任务1,第二片执行任务2,然后一个循环结束后再执行任务1,以此类推。如果这个时间片分的足够小,那么每个程序的等待时间也会很小,貌似都是在同时进行的。

    @2:内存的分片,将内存分为几片,每一片存放一段程序。

这种多任务操作系统就是现代操作系统的雏形。

原创文章,作者:N24_强仔,如若转载,请注明出处:http://www.178linux.com/55832

(1)
N24_强仔N24_强仔
上一篇 2016-10-30 17:22
下一篇 2016-10-30 17:23

相关推荐

  • 抵御DDOS攻击,iptables限制TCP连接和频率

    cc攻击一到就有点兵临城下的感觉,正确的设置防护规则可以做到临危不乱,这里给出一个iptables对ip进行连接频率和并发限制,限制单ip连接和频率的设置规则的介绍 #单个IP在60秒内只允许新建20个连接,这里假设web端口就是80, iptables -I  INPUT -i eth1 -p tcp -m tcp –dpo…

    系统运维 2016-05-08
  • 对inode的初步理解

    1.什么是inode?     inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。 2.inode中包含了什么信息? * inode 编号 * 用来识别文件类型,以及用于 …

    2017-07-18
  • 文本处理sed

    文本处理sed Sed介绍:          处理文本的工具sed ,Stream EDitor, 行编辑器 sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,…

    Linux干货 2017-05-04
  • 第三周作业

    查看链接:http://note.youdao.com/noteshare?id=9b1aa0906b0918cc5cb557aa348e82da

    Linux干货 2016-09-19
  • openssl建立私有CA和申请证书

    实验环境: 虚拟机:VMware® Workstation 12 Pro 主机A:ip为10.1.255.55/16,创建CA并给其他主机提供CA服务 主机B:为httpd服务器,ip为10.1.249.115/16 1、查看openssl的配置文件/etc/pki/tls/openssl.cnf [root@localhost…

    Linux干货 2016-09-23
  • 循环体

    for 变量名in 列表;do 循环体 done 执行机制: 依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束 列表生成方式: (1) 直接给出列表 (2) 整数列表: (a) {start..end} (b) $(seq[start [step]] end) (3) 返回列表的命令  &nbsp…

    Linux干货 2016-08-21

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 17:27

    总结的不错,希望你能熟知这些基础的知识,加油!