Undergraduate
Engineering & Technology

New Notebook

1

137

0

访客

访客

操作系统做了什么

用户告诉操作系统执行helloworld程序;

操作系统找到helloworld 程序的相关信息,检查其类型是否是可执行文件;并通过程序首部信息,确定代码和数据在可执行文件中位置并计算出对应的磁盘块地址;

操作系统创建一个新的进程,并将helloworld可执行文件映射到该进程结构,表示由该进程执行helloworld程序;

操作系统为helloworld程序设置CPU上下文环境,并跳到程序开始处(假设调度程序选中helloworld程序);

执行helloworld程序的第一条指令,发生缺页异常;

操作系统分配一页物理内存,并将代码从磁盘读入内存,然后继续执行helloworld程序;

helloworld程序执行puts函数(系统调用),在显示器上写一字符串;

操作系统找到要将字符串送往的显示设备,通常设备是由一个进程控制的,所以,操作系统将要写的字符串送给该进程;

控制设备的进程告诉设备的窗口系统他要显示字符串,窗口系统确定这是一个合法的操作,然后将字符串转换成像素,将像素写入设备的存储影响区;

视频硬件将相似转换成显示器可接收的一组控制数据信号;

显示器解释信号,激发液晶屏;

屏幕上出现“hello world”。

PromotionBanner

Comment

No comments yet