682-应用程序和OS代码是如何一起运行的

OS内核所作的那些个管理

	(1)进程管理
	(2)内存管理
	(3)设备管理
	(4)文件管理(虚拟资源管理)
	(5)网络管理

应用程序和OS代码是如何一起运行的

1)应用程序、OS、计算机硬件
图:
682-应用程序和OS代码是如何一起运行的
这是逻辑结构图

这张图大家很好理解,它描述了应用程序、OS与计算机硬件之间,相互依存的逻辑关系,OS运行于硬件之上,应用程序运行与OS之上。
这张图很容易给大家造成误解,认为应用程序是完全就是骑在OS内核上,应用程序跟硬件完全挨不上,这是不可能的,应用程序和OS都是代码写的,
都需要运行在内存和CPU上,这张图只是想说明,当应用程序需要完成什么复杂任务时,都不能独自完成,都必须基于OS的支持才能实现,并不是说应用程序完全脱离了硬件。

2)应用程序与OS到底是如何一起运行在计算机上的
图:
(a)图解
682-应用程序和OS代码是如何一起运行的
这是正确的图解
Os代码和应用程序代码都在内存中,运行在内存和CPU中
运行应用程序的代码时,PC程序计数器取应用程序的指令,CPU运行应用程序代码
指令是电信号形式的二进制数。总线就是电线。
应用程序调用OS提供的函数接口,让OS帮忙提供支持时,这是PC取OS的指令并运行,并去控制外设(硬件)工作,这样就是取得OS支持,总之OS充当了应用程序控制硬件设备的中间人。

(b)举例
比如当应用需要向磁盘文件写数据时,应用程序不能直接操作磁盘,必须通过OS提供的接口,调用OS的代码,由OS通过文件系统找
到你要操作的问文件,然后调用磁盘驱动程序向磁盘中写数据。
这个过程就是,PC先取指运行应用程序,调用OS时PC再取指运行OS的代码,然后在对磁盘上的文件进行数据的读写操作。

上一篇:浅析Java中的深拷贝和浅拷


下一篇:682.棒球比赛