1.编程语言的作用及与操作系统和硬件的关系
①编程语言是程序员与计算机沟通的介质
②操作系统是基于硬件的第一层软件,控制和管理计算机硬件,合理对各类作业进行调度,以及方便用户使用的一组程序的集合
2.应用程序-》操作系统-》硬件
计算机分为三层,自底向上分别为:
①硬件(Hardware),按照冯氏的结构定义,一个处理器由5个部分构成,分别为:存储器;控制器;运算器;输入设备;输出设备。对于常见的计算机而言,存储器如常见的外存储设备;CPU则包含运算器、控制器和内存储;输入输出(I/O)很好理解,这里就不写了。
② 操作系统:Operation System,操作系统主要负责管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。讲的具体一点如进程、线程管理;内存管理;信号量机制;IO管理等。最常见OS的如Windows,又如HP-UX、SUSE、VxWorks(嵌入式)。
③应用程序层:Application,应用层,指使用各种不同的编程语言(C、C++、JAVA、Ruby、Python,太多了,写不完)、通过各种开发工具并基于各种操作系统开发的——软件。该部分是大部分程序员工作的一层,也是构成我们丰富多彩的生活最直接的一部分。常见的如Word是软件,QQ亦是软件。
3. cpu-》内存-》磁盘
①CPU即中央处理器,是英语“Central Processing Unit”的缩写。CPU从内存或缓存中取出指令,放入指令寄存器,并对指令译码分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。
②但是,CPU并不能直接调用存储在硬盘上的系统、程序和数据,必须首先将硬盘的有关内容存储在内存中,这样才能被CPU读取运行。因而,内存(即物理内存,是相对于硬盘这个“外存”而言)作为硬盘和CPU的“中转站”,对电脑运行速度有较大影响。
③当运行数据超出物理内存容纳限度的时候,部分数据就会自行“溢出”,这时系统就会将硬盘上的部分空间模拟成内存——虚拟内存,并将暂时不运行的程序或不使用的数据存放到这部分空间之中,等待需要的时候方便及时调用。
④由于内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数据就需要使用硬盘(外存储器)。硬盘也会影响系统速度,因为系统从硬盘中读取数据并通过总线存入内存的速度也会影响系统运行的快慢。