操作系统原理,多道程序设计,并发环境与并发任务,进程定义,进程控制块PCB,PCB维护的进程数据

一、多道程序设计:
1、允许多个程序同时进入内存运行,目的是为了提高系统效率。
2、每个程序有自己的程序计时器,物理上只有一个计时器,每个程序在占用CPU时,会将自己的计时器里的内容推送到物理计时器中,通过这种操作,使得多个应用程序可以同时在内存中执行。
3、宏观上:多个应用程序在并发进行
4、微观上:单个CPU任然在串行处理任务。

二、并发环境:
1、一段时间间隔内,单个处理器上有两个或两个以上的程序同时处于开始运行但尚未结束的状态并且次序不是事先确定的。
2、并发环境下执行的程序就是并发程序。

三、进程process的定义:
进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位,又叫任务。

注意:
1、进程是程序的一次执行,
2、是正在运行的程序的抽象,
3、是对CPU的抽象,可以将一个物理CPU变换为多个虚拟的CPU
4、系统资源以进程为单位分配,如内存,文件,每个进程拥有独立的地址空间
5、操作系统将物理CPU调度给需要的进程,就是将CPU的控制权交给该进程

四、进程控制块PCB:
1、PCB,process control block,又称进程描述符,进程属性。
2、操作系统用于管理进程的一个专门的数据结构,记录进程的各种属性,描述进程的动态变化过程。
3、CPB是操作系统感知进程才能在的唯一标志,进程与PCB是一一对应的。
4、所有进程的PCB集合就是进程表,进程表的大小是固定,其最大值就是操作系统的并发度。

五、PCB维护的进程数据:
1、通用信息
a、进程标识符PID,唯一,整数
b、进程名,通常基于可执行文件名,不唯一
c、用户标识符uid
d、进程组关系,父进程,兄弟进程等关系

2、进程控制信息:
a、当前状态
b、优先级priority
c、代码执行入口地址
d、保存的磁盘地址
e、运行统计信息(执行事件,页面调度)
f、进程间同步和通信
g、进程的队列指针
h、进程的消息队列指针

3、进程拥有的资源和使用情况:
a、虚拟地址空间的状况
b、打开的文件描述符

4、CPU现场信息,进程不运行时保存在PCB中的进程硬件信息:
a、寄存器值(通用寄存器,程序计数器PC,程序状态字PSW,栈指针)
b、指向该进程页表的指针

操作系统原理,多道程序设计,并发环境与并发任务,进程定义,进程控制块PCB,PCB维护的进程数据相关推荐

  1. spooling技术课程设计 linux环境,SPOOLING技术模拟实现 操作系统原理课程设计.doc

    SPOOLING技术模拟实现 操作系统原理课程设计 ******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2010年秋季学期 操作系 ...

  2. spooling技术课程设计 linux环境,《SPOOLING技术模拟实现 操作系统原理课程设计》.doc...

    <SPOOLING技术模拟实现 操作系统原理课程设计> ******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2010年 ...

  3. linux文件管理课程设计,操作系统原理课程设计-Linux文件管理系统的仿真.doc

    操作系统原理课程设计 实践报告 全套设计加扣 3012250582 题 目: Linux文件管理系统的仿真 姓 名: 学 院: 信息科学技术学院 专 业: 计算机科学技术系 班 级: 计科121 是否 ...

  4. 操作系统原理 —— 操作系统的四个特征:并发、共享、虚拟、异步 (二)

    本章我们来聊一下操作系统的四个特征 在我们的操作系统中有四个特征:并发.共享.虚拟.异步,我们结合每一个特征来进行讲解,我们先来看并发. 并发 这里所说的并发,最好不联想到并发编程.咱们就简简单单理解 ...

  5. 操作系统原理课程设计

    一.实验目的和要求 1.通过设计程序,实现磁盘寻道算法中FCFS.SSTF.SCAN和CSCAN四种算法,加深对磁盘寻道算法的理解和掌握. 二.实验设备.环境 设备:操作系统为WINDOWS系统的计算 ...

  6. udp协议没有粘包问题、基于socketserver实现并发的socket(基于tcp、udp协议)、基于udp协议的套接字、操作系统原理以及进程知识

    基于udp协议的套接字通信服务端 from socket import *server=socket(AF_INET,SOCK_DGRAM) #数据报协议->udp server.bind((' ...

  7. java 无锁缓存_如何在高并发环境下设计出无锁的数据库操作(Java版本)

    一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...

  8. 如何在高并发环境下设计出无锁的数据库操作(Java版本) 转载

    一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...

  9. 并发的发展历史-集成电路和多道程序设计

    多道程序设计的出现解决了这个问题,就是把内存分为几个部分,每一个部分放不同的程序.当一个程序需要等待I/O操作完成时.那么CPU可以切换执行内存中的另外一个程序.如果内存中可以同时存放足够多的程序,那 ...

  10. 【转】Java多线程编程(十)-并发编程原理(分布式环境中并发问题)

    转载地址:http://blog.csdn.net/leicool_518/article/details/42268947 在分布式环境中,处理并发问题就没办法通过操作系统和JVM的工具来解决,那么 ...

最新文章

  1. java arp 攻击_用JAVA代码实现ARP攻击 | 学步园
  2. 仪器和软件通讯测试软件,软件定义的仪器-测试测量-与非网
  3. 微信小程序map作为子组件wx.createMapContext失效
  4. 计算机网络 谢希仁 课后习题部分答案
  5. 知识图谱入门视频(二)
  6. CEF避坑指南(一)——编译并自制浏览器
  7. 我觉得我们看到的所谓“善良人”
  8. Springmvc_3(SessionAttributes 将数据放入到session中)
  9. 学习 shell —— 相对路径转换为绝对路径
  10. 大一c语言期末课程总结,大一下学期期末自我总结
  11. 第三届上海市青少年算法竞赛(小学组)
  12. mysql gtidpurged_gtid环境下mysqldump对于set-gtid-purged的取值
  13. 2015年9月 javaweb餐厅系统
  14. Python获取本机ip地址的两种有效方法
  15. Wi-Fi环境下基于注意力机制及深度学习的鲁棒被动感知技术
  16. 常见生态问题成因及措施
  17. 让word中插入的图片不失真,图像保持原清晰度
  18. 关于frida调试的时候提示Failed to spawn: the ‘argv‘ option is not supported when spawning Android apps错误
  19. 计算机错误提示声音,电脑报警提示音有哪些
  20. Python学习日记 Day1

热门文章

  1. 基于javaweb,springboot银行管理系统
  2. 记一次中Phobos家族Devos勒索病毒
  3. MEGA这个网盘你可以拥有,超级良心
  4. 如何搭建反欺诈策略与模型
  5. 零基础SQL教程: 什么是SQL 01
  6. (附源码)spring boot记账微信小程序 毕业设计 180815
  7. jszip 解压压缩包_使用zip.js压缩文件和解压文件
  8. 树莓派 | Debian更改屏幕分辨率 或 解决树莓派使用HDMI-VGA转换器黑屏的方案
  9. Chapter3 Language Basics
  10. ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.12