操作系统概述
操作系统是一个软件
# 操作系统做了什么?
简单一个程序,标准输出设备上显示字符串,它的执行过程:
- 用户告诉操作系统执行helloworld程序(如何告知?)
- 操作系统:查找程序的相关信息,检查类型是否是可执行文件;通过程序首部信息,确定代码和数据在可执行文件种的位置并计算出对应的磁盘块地址(文件格式?)
- Windows下的可执行文件的格式是PE格式
- Linux的可执行文件的格式是ELF格式
- 操作系统:创建一个新的进程,并将程序的可执行文件映射到该进程结构,表示由该进程执行helloworld程序
- 操作系统:为helloworld程序设置CPU上下文环境,并跳到程序开始处(假设调度程序选中hello程序)
执行程序第一条指令,发生缺页异常 操作系统:分配一页物理内存,并将代码从磁盘读入内存,然后继续执行程序