zoukankan      html  css  js  c++  java
  • 计算机硬件基础学习

    1.编程语言的作用及与操作系统和硬件的关系

      说起语言,我们都会知道Chinese、English、French and 还有天南地北的方言,一般大家都了解语言是我们人与人沟通的最基本方式。当人和机器沟通、机器和机器沟通这都需要互相能够理解的语言,这就是我们的编程语言。计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。其中高级语言有我们熟知的C、java、C++、python、go等等。我们大家了解到的操作系统windows、linux、unix也都是用很多种编程完成的一个特殊软件,操作系统可以以最快的速度让计算机处理我们命令,完成指定操作。

    2.应用程序-》操作系统-》硬件

      应用程序、操作系统、硬件这三者的关系,我们先可以分为硬件和应用程序(应用程序和操作系统)的关系,硬件就是我们说的电子元器件,我们可以用硬件搭建一个遥控小车,但是当我们需要小车完成一些指定的运动,就需要应用程序驱动硬件来完成。在电脑上,当我们要电脑显示一个图片时,就需要应用程序发一个指令给操作系统,让操作系统读取硬盘上存储的数据、然后返回给应用程序、最后显示在我们的电脑屏幕上。

    3.cpu-》内存-》磁盘

     CPU在运行的时候,需要从存储器里取数据出来、进行运算,要不停地用存储器读写、计算出来的结果还是要返回存储器中。如果硬盘速度够快的话,就不需要内存了。其实内存的作用就是暂时存放CPU中的运算数据以及与硬盘交换的数据,是硬盘和CPU之间的桥梁。

    4.cpu与寄存器,内核态与用户态及如何切换

      CPU:解释计算机指令以及处理计算机软件中的数据,从内存中取指令->解码->执行,然后再取指->解码->执行下一条指令,周而复始,直至整个程序被执行完成。

      寄存器:CPU内部都有一些用来保存关键变量和临时数据的

      内核态:当cpu在内核态运行时,cpu可以执行指令集中所有的指令,很明显,所有的指令中包含了使用硬件的所有功能,(操作系统在内核态下运行,从而可以访问整个硬件)

      用户态:用户程序在用户态下运行,仅仅只能执行cpu整个指令集的一个子集,该子集中不包含操作硬件功能的部分,因此,一般情况下,在用户态中有关I/O和内存保护(操作系统占用的内存是受保护的,不能被别的程序占用),当然,在用户态下,将PSW中的模式设置成内核态也是禁止的。

      内核态与用户态切换  

      用户态下工作的软件不能操作硬件,但是我们的软件比如暴风影音,一定会有操作硬件的需求,比如从磁盘上读一个电影文件,那就必须经历从用户态切换到内核态的过程,为此,用户程序必须使用系统调用(system call),系统调用陷入内核并调用操作系统,TRAP指令把用户态切换成内核态,并启用操作系统从而获得服务。

      请把的系统调用看成一个特别的的过程调用指令就可以了,该指令具有从用户态切换到内核态的特别能力。

    5.存储器系列,L1缓存,L2缓存,内存(RAM),EEPROM和闪存,CMOS与BIOS电池

     寄存器即L1缓存:

      用与cpu相同材质制造,与cpu一样快,因而cpu访问它无时延,典型容量是:在32位cpu中为32*32,在64位cpu中为64*64,在两种情况下容量均<1KB。

       高速缓存即L2缓存:

      高速缓冲存储器是存在于主存与CPU之间的一级存储器, 由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多, 接近于CPU的速度。

          内存(RAM)

      在计算机的组成结构中,有一个很重要的部分,就是存储器。存储器是用来存储程序和数据的部件,对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存储器

      EEPROM和闪存

      EEPROM(Electrically Erasable PROM)和闪存(flash memory),非易失性存储设备,电可擦除可编程ROM,但与rom相反的是可擦除重写,不过要比ram写入花费时间多。

    闪存的读写速度结余RAM和磁盘之间,不过闪存写入寿命太短。

      CMOS与BIOS电池

       CMOS 易失性存储设备,在计算机中用于存储当前时间和日期,还可以保存BIOS配置参数。CMOS存储器和递增时间的电路由一块BIOS电池驱动

    6.磁盘结构,平均寻道时间,平均延迟时间,虚拟内存与MMU

      磁盘由一个个盘片组成的,我们先从个盘片结构讲起。如图1所示,图中的一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区(图践绿色部分)。扇区是磁盘的最小组成单元,通常是512字节。

      平均寻道时间是指磁盘在接到cpu命令后,磁头从开始移动到移动到数据所在磁道所需要的平均时间。

      平均延迟时间是指磁头移动到数据所在磁道后等待磁盘旋转到数据所在扇区的时间。

      虚拟内存是计算机系统的虚拟内存机制,主要是为了解决执行程序过大,内存消耗殆尽的问题。windows运用了虚拟存储技术,即拿出一部分硬盘空间充当内存使用,这部分空间被称为虚拟内存。在linux中称为swap,其核心是快速映射内存地址,由CPU中的一部分负责,成为存储器管理单元(MMU)

    7.磁带

      磁带是一种低速存储设备,但由其容量大价格便宜的特性,常用于数据的备份工作。

    8.设备驱动与控制器

      设备驱动是操作系统和IO设备的桥梁,因为电脑配件的厂商不同,所以需要驱动程序将系统的请求解释为特定设备控制器理解的命令。

      控制器是主板上的一块或一组芯片,用于连接硬件(硬盘、网卡、声卡)与操作系统通信。

    9.总线与南桥和北桥 

      总线:是指计算机各个部件之间传输命令的公共通信干线,随着cpu和存储设备的提速,出现了多总线模式,使用们的I/O设备、cpu及存储设备的通信速度更快了。计算机中心可划分为数据总线、地址总线和控制总线,分别用于传输数据、数据地址和控制信号。

      北桥即PCI桥:连接高速设备

      南桥即ISA桥:连接慢速设备

    10.操作系统的启动流程

      1.开启电源

      2.启动BIOS(base input output sys)系统进行硬件自检

      3.BIOS读取CMOS数据,执行设定好的启动顺序

      4.读取启动设备的MBR,并放入指定的位置内存中

      5根据MBR中的分区信息运行启动管理器,由用户选择启动的操作系统。

      6 操作系统的内核被载入内存,初始化现场加载系统各个模块,最后加载登录程序。

    11.应用程序的启动流程

      1.单击应用程序的快捷方式

      2.电脑系统接到用户请求指令。

      3.cpu处理用户指令,由用户态切换到内核态,把应用程序在硬盘上的信息加载到内存中

      4.cpu由内核态切换到用户态,加载应用程序。

  • 相关阅读:
    10 个深恶痛绝的 Java 异常。。
    为什么公司宁愿 25K 重新招人,也不给你加到 20K?原因太现实……
    推荐一款代码神器,代码量至少省一半!
    Spring Cloud Greenwich 正式发布,Hystrix 即将寿终正寝。。
    hdu 3853 LOOPS(概率 dp 期望)
    hdu 5245 Joyful(期望的计算,好题)
    hdu 4336 Card Collector(期望 dp 状态压缩)
    hdu 4405 Aeroplane chess(概率+dp)
    hdu 5036 Explosion(概率期望+bitset)
    hdu 5033 Building (单调栈 或 暴力枚举 )
  • 原文地址:https://www.cnblogs.com/richiewlq/p/7151053.html
Copyright © 2011-2022 走看看