1、编程语言的作用及与操作系统和硬件的关系:
今天第一堂课让我清楚编程语言是程序员用于计算机工作和沟通的一种介质,是计算机能够识别的一种语言。
操作系统位于计算机硬件与应用软件之间,本质也是一个软件。
2、应用程序-》操作系统-》硬件:
1、操作系统对计算机硬件设备进行操作
2、操作系统可以感受到用户对输入设备的操作
3、应用程序可以通过操作系统执行某个动作,再由操作系统对硬件进行采取
4、操作系统最后再把输入设备的变化上传应用程序
3、cpu-》内存-》磁盘
CPU:相当于人的大脑,用于计算
内存:相当于人的记忆,用于临时储存
硬盘:相当于人的笔记本,用于永久保存
CPU运行时需要向内存中提取,由于内存是短时间储存,如果内存中并没有CPU需要的东西,
内存就会在硬盘中提取然后再交给CPU。
4、cpu与寄存器,内核态与用户态及如何切换
1、CPU与寄存器:
CPU同一时刻只能干一件事情,它是从内存中去除指令然后解码再去执行,循环进行直至完成整个程序。
由于数据量比较大,CPU不能同一时刻进行,所以需要寄存器来进行临时保存。
2、内核态与用户态:
内核态与用户态是CPU工作的两种工作的状态(内核态可以直接操作硬件,用户态不可以直接操作硬件)
应用程序在进行时处于用户态,而用户态不能直接操作硬件,这就需要用户态切换到内核态的必要过程,为此,用户程序必须使用系统调用(system call),
系统调用陷入内核并调用操作系统,TRAP指令把用户态切换成内核态,并启用操作系统从而获得服务。
5、存储器系列,L1缓存,L2缓存,内存(RAM),EEPROM和闪存,CMOS与BIOS电池
1、存储系列:
典型的访问时间 典型的容量
1ns 寄存器 <1kb
2ns 高速缓存 4MB
10ns 内存 512~2048MB
10ms 硬盘 200~1000GB
100s 磁带 400~800GB
对于储存系列采用上部排列,顶层的存储器速度最小,容量也小,相对应以下存储器的成本也高很多。
2、L1缓存:
即寄存器,它与CPU材质相同,与CPU一样快,所以在运行时并无延时,典型容量:32位CPU-32*32,64位CPU-64*64.
3、L2缓存:
即高速缓存,主要由硬件控制高速缓存的存取,在CPU开始执行任何指令之前,都会首先从内存中取得该条指令以及其它一些相关数据和信息。为了加快CPU的运行速度,几乎所有的芯片都采用两种不同类型的内部存储器,即高速缓存。缓存被用来临时存放一些经常被使用的程序片段或数据。
4、内存(RAM):
内存是储存器的重要存储部位,主存通常称为随机访问存储RAM,就是我们通常所说的内存,容量一直在不断攀升,所有不能再高速缓存中找到的,都会到主存中找,主存是易失性存储,断电后数据全部消失。
5、EEPROM和闪存:
EEPROM(Electrically Erasable PROM,电可擦除可编程ROM)和闪存(flash memory)也是非易失性的,但是与ROM相反,他们可以擦除和重写。不过重写时花费的时间比写入RAM要多。在便携式电子设备中中,闪存通常作为存储媒介。闪存是数码相机中的胶卷,是便携式音译播放器的磁盘,还应用于固态硬盘。闪存在速度上介于RAM和磁盘之间,但与磁盘不同的是,闪存擦除的次数过多,就被磨损了。
6、CMOS与BIOS电池:
CMOS,它是易失性的,许多计算机利用CMOS存储器来保持当前时间和日期。BIOS电池是在关闭电源后,时间还会在更新。
6、磁盘结构,平均寻道时间,平均延迟时间,虚拟内存与MMU
1、硬盘结构
信息卸载磁盘上的一些列的同心圆上,是一连串的2进制位(称为bit位),为了统计方法,8个bit称为一个字节bytes,1024bytes=1k,1024k=1M,1024M=1G,所以我们平时所说的磁盘容量最终指的就是磁盘能写多少个2进制位。
磁头 储存读写器的一种
磁道 每个磁头可以读取一段换新区域
扇区 每个磁道划成若干扇区,扇区典型的值是512字节,数据都存放于一段一段的扇区,即磁道这个圆圈的一小段圆圈,从磁盘读取一段数据需要经历寻道 时间和延迟时间
柱面 把一个戈丁手臂位置上所以的磁道合起来
2、平均寻道时间
机械手臂从一个柱面随机移动到相邻的柱面的时间成为寻到时间,找到了磁道就以为着招到了数据所在的那个圈圈,但是还不知道数据具体这个圆圈的具体位置。
3、平均延迟时间
机械臂到达正确的磁道之后还必须等待旋转到数据所在的扇区下,这段时间成为延迟时间。
4、虚拟内存
内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如果执行的程序很大或很多,就会导致内存消耗殆尽。为了解决这个问题,Windows中运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,当内存占用完时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。
7、磁带
在价钱相同的情况下比硬盘拥有更高的存储容量,虽然速度低于磁盘,但是因其大容量,在地震水灾火灾时可移动性强等特性,常被用来做备份。
8、设备驱动与控制器
1、设备驱动
I/O设备:输入输出(设备控制器、设备本身)
2、控制器
是查找主板上的一块芯片或一组芯片(硬盘,网卡,声卡等都需要插到一个口上,这个口连的便是控制器),控制器负责控制连接的设备,它从操作系统接收命令,比如读硬盘数据,然后就对硬盘设备发起读请求来读出内容。
9、总线与南桥和北桥
1、总线
总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连线,用于在各个部件之间传输信息。
2、南桥与北桥
北桥即PCI桥:连接高速设备,南桥即ISA桥:连接慢速设备。
10、操作系统的启动流程
1.计算机加电
2.BIOS开始运行,检测硬件:cpu、内存、硬盘等
3.BIOS读取CMOS存储器中的参数,选择启动设备
4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)
5.根据分区信息读入bootloader启动装载模块,启动操作系统
6.然后操作系统询问BIOS,以获得配置信息。
11、应用程序的启动流程
双击————输入设备————控制器————操作系统————硬盘————内存————输出设备
首先双击某个系统软件,交给输入设备,输入设备传到控制器进行对操作系统操作硬件的请求,操作系统会时时刻刻的监控,
进而操作系统在硬盘查找,内存再读取最后交给输出设备,打开软件。