程序的定义
程序并非代码,它包含数据,不过数据可能是需要某些操作来进行导入到内存中,比如:磁盘,键盘,扫描仪。而代码,只是CPU的指令码,用来操作CPU的。
进程
在操作系统的世界里,进程是操作系统的概念,因为我们平时用的软件都是在操作系统之上。而操作系统本身就是由多个功能模块组成的庞大的复杂的软件系统。一般的通用的操作系统都会提供一个Shell,让人与计算机进行交互。作为操作系统面对程序,就是将其启动为一个进程,进程本身就有一定的数据结构,主要就是PSP和程序代码组成。PSP本身就是为了让进程与操作系统进行通信。每个操作系统都有对于的进程的相应的数据结构,只不过这个数据结构是通过字节来进行规划的,PSP占用程序内存的前256字节。
源程序->进程
源程序对于计算机就是文本文件,没有特别的含义。但是,计算机只能处理二进制的数字,故需要将源程序转换为二进制命令集合,这个步骤叫做compile,Source program will be transformed object program that is binary file。cpu认识的指令是高低电平,我们抽象成了二进制,cpu是可以和内存进行高低电平的识别的。故我们所有的东西都要加载到内存中,那么CPU才能进行识别,CPU的指令和数据来源都是内存,输入设备就是将外界信息转换为高低电平。将目标文件转为进程程序叫做link,将用到的库文件和程序包装成操作系统的认识的进程的数据结构。操作系统通过后缀名来决定采用什么进程来加载数据。PSP在这里有对程序的描述。