欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

(1)并发编程实现的基础

程序员文章站 2022-12-27 15:33:38
# 多道程序系统 原理,缺点 #允许多个程序同时进入内存并运行。即同时把多个程序放入内存,并允许它们交替在CPU中运行,它们共享系统中的各种硬、软件资源。当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序。 # 多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者 ......

# 多道程序系统 原理,缺点

#允许多个程序同时进入内存并运行。即同时把多个程序放入内存,并允许它们交替在cpu中运行,它们共享系统中的各种硬、软件资源。当一道程序因i/o请求而暂停运行时,cpu便立即转去运行另一道程序。

# 多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如cpu)的有序调度问题,解决方式即多路复用,多路复用分为时间上的复用和空间上的复用。

# 时间复用,空间复用

# 空间上的多路复用: 将内存分为几部分,每个部分放入一个程序,这样,同一时间内存中就有了多道程序。

# 空间上的复用最大的问题是:程序之间的内存必须分割,这种分割需要在硬件层面实现,由操作系统控制。如果内存彼此不分割,则一个程序可以访问另外一个程序的内存,

# 首先丧失的是安全性,比如你的qq程序可以访问操作系统的内存,这意味着你的qq可以拿到操作系统的所有权限。

# 其次丧失的是稳定性,某个程序崩溃时有可能把别的程序的内存也给回收了,比方说把操作系统的内存给回收了,则操作系统崩溃。

# 时间上的多路复用: 当一个程序在等待i/o时,另一个程序可以使用cpu,如果内存中可以同时存放足够多的作业,则cpu的利用率可以接近100%

# 操作系统采用了多道技术后,可以控制进程的切换,或者说进程之间去争抢cpu的执行权限。这种切换不仅会在一个进程遇到io时进行,一个进程占用cpu时间过长也会切换,或者说被操作系统夺走cpu的执行权限

# 什么是操作系统?

# 操作系统就是一个协调、管理和控制计算机硬件资源和软件资源的控制程序。

# 操作系统由操作系统的内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为应用程序员写的应用程序提供系统调用接口)两部分组成

# posix是ieee提出的一个unix标准,(可移植的操作系统接口portable operating system interface)

# 操作系统的功能?

# 隐藏了丑陋的硬件调用接口,为应用程序员提供调用硬件资源的更好,更简单,更清晰的模型(系统调用接口)。应用程序员有了这些接口后,就不用再考虑操作硬件的细节,专心开发自己的应用程序即可。

# 将应用程序对硬件资源的竞态请求变得有序化

# 操作系统的作用?

# 作用一:为应用程序提供如何使用硬件资源的抽象。例如:操作系统提供了文件这个抽象概念,对文件的操作就是对磁盘的操作,有了文件我们无需再去考虑关于磁盘的读写控制

# 作用二:管理硬件资源。操作系统的任务是在相互竞争的程序之间有序地控制对处理器、存储器以及其他i/o接口设备的分配。