计算机系统基本知识

来源:互联网 发布:08影院最新版源码 编辑:程序博客网 时间:2024/06/16 17:04
  1. 字节:所有的文件内容都是由0和1组成的位(bit)序列,8个位称为1个字节。在ASCII中每个字节可以表示一个英文字符(中文字符需要两个字节表示),只由ASCII字符构成的文件称之为文本文件,其他文件都称为二进制文件。

  2. 信息:在系统中所有的信息都是由一串位构成,要判断一串位信息到底代表一个整数、浮点数、字符串还是一条指令的关键是我们读到这些数据时的上下文信息=位+上下文,通过上下文对象的情况和一串位中包含的内容,我们能够综合判断出信息的含义。

  3. 总线:总线是贯穿整个系统并连接其包括各个部分的通讯管道,总线上传递定长的字节块,我们把它称之为字(word),在32位机器上一个字是4个字节,在64位机器上一个字是8个字节。

  4. 主存:主存(又称内存)是临时存储设备,能够存放数据信息,具有断电易失性。从物理意义上,主存是一组动态随机存取存储器(DRAM)芯片组成的;从逻辑上来说,主存是一个地址从0开始的线性的字节数组,所有的数据被存放其中且地址不同。

  5. 处理器:中央处理单元(CPU)简称处理器,是解释执行存储在主存中指令的引擎,处理器的核心是一个字长存储设备程序计数器(PC),只要在机器运行过程中,PC都会指向主存中的某条指令,这条指令就是处理器当前执行的指令。

  6. 高速缓存:高速缓存是位于CPU与主存之间的数据缓存设备,通常有三级,高速缓存是采用静态随机访问存储器(SRAM)来实现的。缓存主存中常用的信息,为了加快CPU和主存间信息访问的速度。

  7. 存储器层次结构

    1. 处理器
    2. L1高速缓存
    3. L2高速缓存
    4. L3高速缓存
    5. 主存
    6. 本地硬盘(本地二级存储)
    7. 分布式文件系统、web服务器、磁带…
  8. 操作系统:操作系统可以被理解成是在所有的硬件设备和软件之间的一层软件。

    1. 操作系统的监管防止了硬件设备被失控的应用程序滥用,提供了基本的安全性
    2. 向应用程序提供简单一致的机制使用那些各不相同的硬件设备
    3. 通过一些基本的抽象概念,(比如:进程、虚拟存储器、文件等…)来实现各类功能。操作系统用文件作为对I/O设备的抽象、用虚拟存储器作为I/O设备和主存的抽象、用进程来抽象的表示处理器和I/O设备和主存。
  9. 进程:我们在运行程序时会有一种假象,感觉计算机中的处理器、主存和I/O设备都在为这个程序服务,处理器在一条一条不断地执行指令,但是实际上并非如此。操作系统用进程的概念构造出这样一种感觉,即使是单核计算机也能够同时执行多个程序,进程是计算机科学中最成功的概念之一。进程是操作系统对一个正在进行的程序的一种抽象,在一个系统上可以同时进行多个进程,而每个进程好像都在独立的占用硬件,而并发运行则是指一个进程的指令和另一个进程的指令是交错执行的,操作系统通过上下文切换的机制达到这种并发的效果。因为上下文切换的速度极快,所以给用户表现为一种多个程序在同时使用处理器的感觉。

  10. 线程:在现代系统中,一个进程中可以由多个线程执行单元组成,多个线程也能形成一种并发的效果,并且线程之间交换数据相比较进程容易很多且高效。

  11. 虚拟存储器:虚拟存储器是一种抽象的概念,他为每个进程提供了一种“在独自占用所有的主存”的假象。每个进程能看到的是一致的存储器,我们称之为虚拟地址空间

  12. 文件:文件就是字节序列,或者可以理解成为由0和1组成的二进制内容。文件向应用程序提供了一种统一的视角来对待各式各样的I/O设备。操作系统用文件来对I/O设备进行抽象,I/O设备读写的内容都为字节序列文件使得处理数据难度降低。

  13. 计算机系统中的抽象:文件作为对I/O设备的抽象、虚拟存储器作为I/O设备和主存的抽象、指令集结构作为对处理器的抽象、进程来抽象的表示处理器和I/O设备和主存、虚拟机作为操作系统和处理器和I/O设备和主存的抽象。