day1

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

  ①编程语言是程序员与计算机沟通的介质

  ②操作系统是基于硬件的第一层软件,控制和管理计算机硬件,合理对各类作业进行调度,以及方便用户使用的一组程序的集合

 

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

  计算机的应用程序不能直接在计算机的硬件上运行,必须在操作系统中才能运行。而计算机的硬件必须有操作系统来调用才能工作,操作系统和应用程序都是安装在计算机硬盘上的,用户通过操作应用程序,而应用程序通过操作系统来间接控制计算机硬件工作。

 

3. cpu-》内存-》磁盘

  CPU负责算数和逻辑运算,工作时CPU首先从电脑内存里取出指令,然后分析指令,再执行命令,最后执行完的指令用户如果想保存结果已方便下次使用必须存在计算机磁盘里,因为磁盘的存储具有长时性,而内存是临时存储。

 

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

  ①CPU与内存之间有速度差,所以有了寄存器(材料与CPU一样)

  ②内核态:CPU所有的指令都可以调用  用户态:不包含调用硬件的指令

  ③应用程序发出系统调用通过操作系统发出一个指令切换状态,再调用硬件。

  ④切换是在一个PSW的寄存器里切换(把一个二进制位转换)

 

5.存储器系列,L1缓存(寄存器),L2缓存(高速缓存),内存(RAM),EEPROM,闪存

  ①CPU中的寄存器就是L1缓存,与CPU材质相同,速度也一样快,CPU访问无延时,典型容量:32位CPU中为32*32,64位CPU中为64*64,这两种情况下的容量均<1kB。

  ②高速缓存即L2缓存,主要由硬件控制高速缓存的存取,内存中有高速缓存行,按照0-64字节为行0,64-127为行1,常用的高速缓存放置在CPU内部或者非常接近CPU的高速缓存中。

  ③内存,乃主存,是存储器系统的主力,通常称为随机访问存储RAM,特点是易失性存储,断电后数据全部消失。

  ④EEPROM是一种电可擦除可编程ROM,闪存在速度上介于RAM和磁盘之间,闪存擦除次数过多会被磨损。

  ⑤CMOS是一种易失性存储器,用来存储计算机的当前时间和日期,以及计算机的相关配置参数,CMOS存储器和递增时间的电路由一小块电池驱动,耗电非常少,电池失效时,相关配置和时间等都会丢失。

 

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

  ①磁盘的结构由磁头,磁道,柱面,扇区,原盘构成。

        ②平均寻道时间就是磁盘的机械手臂从一个柱面随机移动到相邻的柱面所用的时间。       

        ③平均延迟时间是指机械臂到达正确的磁道之后还得等待磁盘旋转到数据所在扇区下所用的时间。

        ④虚拟内存使计算机可以运行大于物理内存的程序,方法是将正在使用的程序放入内存取执行,而暂时不需要执行的程序放到磁盘的某块地方,这块地方成为虚拟内存,在linux中成为swap,这种机制的核心在于快速地映射内存地址,由cpu中的一个部件负责,成为存储器管理单元(Memory Management Unit MMU)(PS:从一个程序切换到另外一个程序,成为上下文切换(context switch),缓存和MMU的出现提升了系统的性能,尤其是上下文切换)

 

7.磁带

  在价钱相同的情况下比硬盘拥有更高的存储容量,虽然速度低于磁盘,但是因其大容量,在地震水灾火灾时可移动性强等特性,常被用来做备份。

 

8.设备驱动和控制器

   控制器是负责控制连接设备的,从操作系统接收命令的一个简单而清晰的接口。驱动程序其实是控制器的操作系统,来使控制器工作来控制计算机硬件。

 

9.总线与南桥和北桥:

  ①总线简单来说就是计算机的所用设备运行在统一的一条总线上称作总线。  

  ②连接CPU与内存的PCI桥叫做北桥,它与ISA桥(南桥)连接。

  ③与北桥连接并于计算机的硬件设备相连接的ISA桥称作南桥。

 

10.操作系统的启动流程

  ①计算机通电

      ②BIOS开始运行,检测硬件(CPU,内存,硬盘等)。

      ③BIOS读取CMOS存储器中的参数,选择启动设备。

      ④从启动设备上读取第一个扇区内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)。

      ⑤BIOS根据分区信息读入bootloader启动装载模块,从而启动操作系统。

 

11.应用软件的启动流程

   ①首先应用程序是的相关文件是寄存在计算机硬盘里。

       ②用户在操作系统中对应用程序执行打开操作。

       ③内存中内核从硬盘里调取相关文件加载到内存里。

       ④CPU再从内存里取指令—>解码—>执行,而同时内存不断从硬盘里调取文件供CPU调用,CPU再取指令—>解码—>执行下一条指令,周而复始,直到应用程序被启动完成。

 

 

 

posted @ 2017-05-18 14:04  hsddon  阅读(111)  评论(0编辑  收藏  举报