计算机基础

计算机硬件介绍

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

  编程语言是用来编写应用程序的,是程序员与计算机沟通的介质。操作系统运行与硬件之上,是应用程序和硬件沟通的工具。

  应用程序->操作系统->计算机硬件

2.计算机的基本组成cpu、内存和硬盘

cpu从内存中取指令、解码并执行。周而复始。cpu处理数据,硬盘存储数据,内存复杂连接CPU和硬盘,存储临时使用的数据。

3.CPU中的寄存器

   寄存器是cpu中组成部分 ,它的存储速度非常快。用来暂存指令、数据和地址给cpu用。

 寄存器的分类

  通用寄存器:用来保存变量和临时结果的寄存器。

  程序计数器:程序计数器保存了将要取出的下一条指令的内存地址。

  堆栈指针寄存器:从来访问内存。栈:后进先出。堆:先进先出。

  程序状态字寄存器:这个寄存器包含了cpu的工作模式,指令集,中断等。

5.CPU的用户态和内核态

内核态:cpu运行在内核态时,cpu可以执行指令集中的所有指令,可以访问整个硬件。

用户态:cpu运行在用户态时,仅仅只能执行cpu指令集的一个子集(该子集不能操作硬件)。

内核态和运行用户态的切换:应用程序向操作系统内核请求运行更高权限的服务,应用程序发起系统调用,改变psw的一个二进制位,操作系统返回应用程序切换cpu状态的接口。

6.储存器

  寄存器既是L1缓存,材质与cpu一样,cpu访问它无时延。

  高速缓存即L2缓存,高速缓存放在cpu内部,或是最接近CPU的地方,程序需要读取储存字时,高速缓存硬件检查所需要的字是否存在于高速缓存中,如果是,那么高速缓存命中,不需要把请求发送给内存,大大节约了时间。

内存:高速缓存找不到的都回去内存中找,内存中的数据断电丢失。

CMOS储存器:CMOS储存器具有易失性,它存储着计算机的时间,配置参数,系统引导等。它由一块单独的电池供电。

7.磁盘

8bit=1byte(字节)

1024b=1KB

1024kb=1M

1024M=1G

数据都存放于一段一段的扇区,扇区是磁道的一部分圆圈。从磁盘读取一段数据需要经过寻道时间和延迟时间。

虚拟内存:虚拟内存技术使计算机扩展原来的内存,部分不需要执行的放在磁盘上。

 上下文切换:从一个程序切换到另一个程序,缓存和MMU提升了上下文切换的性能。

8.驱动和控制器

驱动程序创建了一个硬件与软件沟通的接口,连接操作系统和硬件,由厂商自己编写,所有的IO设备都需要控制器接入总线。

设备驱动用来控制驱动器。

9.总线

总线分为数据总线、地址总线和控制总线。

北桥:连接系统高速设备

10.操作系统启动流程

  计算机加电

  BIOS上电自检

  读取启动顺序:硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序(Boot Sequence)

  主读取引导记录:从硬盘第一个扇区读取主引导记录,"只有512个字节,它的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。由三部分组成

                  (1)第1-446字节:调用操作系统的机器码。

                  (2)第447-510字节:分区表

                  (3)第511-512字节:标记位

  系统启动:操作系统的内核载入内存,加载bootloader,操作系统询问BIOS,以获得配置信息,查询驱动程序是否正常。

11.应用程序启动流程

监视器监控输入设备->双击应用程序,查找所在磁盘位置->内存读入应用程序->cpu进行执行

编写程序读取写入文件都在调用操作系统。

原文地址:https://www.cnblogs.com/zouruncheng/p/6532913.html