操作系统

原创 2013年12月05日 00:25:20
操作系统是管理计算机硬件和软件资源的计算机程序。

操作系统中申请资源的基本单位是进程。

在CPU得到执行的基本单位是线程。

进程是由程序段、数据段、PCB组成的。

临界资源是指每次仅允许一个进程访问的资源。所以只能采用互斥访问来共享资源。互斥访问的方式有:信号量,互斥量,事件,临界区等。

临界区指在每个进程中访问临界资源的那段代码


产生死锁的根本原因是资源分配不当和资源数量不足,发生死锁的四个必要条件是:互斥条件,请求和保持条件,不剥夺条件和环路等待条件,银行家算法用于避免死锁

进程是系统进行资源分配和调度的一个独立单位。
线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.
线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.
在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。这个就是多线程比多进程常用的原因。

进程间的同步:意思就是一个进程达到一个状态之后等待另一个进程。同步的方式有信号量(Semaphore),互斥量(Mutex),事件(Event),临界区(Critical Section)。其实这个也是上面讲到的互斥访问的方式,也就是说,进程间的同步机制也只有在需要互斥访问的时候才有讨论的意义。



信号量-摘自《现代操作系统》

信号量是E.W.Dijkstra在1965年提出的一种方法,它使用一个整型变量来累计唤醒次数,供以后使用。在他的建议中引入了一个新的变量类型,称作信号量(semaphore)。一个信号量的取值可以为0...

学习Linux C编程之操作系统基础训练

1、简述Linux进程内存空间分为哪几个段?作用分别是什么? 3个段,数据段,代码段,堆栈段 数据段:存放全局变量,静态变量static,其中BSS数据段存放为初始化的全局变量和static,数据...

基于stm32的RT-Thread操作系统+J-link V9虚拟串口调试操作

利用j-link的虚拟串口功能结合rt-thread操作系统的串口打印进程,实现代码和进程跟踪,将打印内容直接输出到编译器的debug窗口中...

ORACLE安装的centos操作系统以及pdksh-5.2.14告警

oracle的centos操作系统iso,最好准备一个模板,这样每次都用这个模板,就比较容易方便安装。网上去下载镜像 centos普通镜像地址下载:http://vault.centos.org/...
  • mchdba
  • mchdba
  • 2017年06月16日 10:37
  • 3006

OpenStack多节点部署(二)——操作系统安装

OpenStack多节点部署(一)——服务器选型 OpenStack多节点部署(二)——操作系统安装 OpenStack多节点部署(三)——网络配置 OpenStack多节点部署(四)—...

记录访客的(ip,浏览器,ip归属地,操作系统代码)并记录在文件中

1.Windows操作系统的版本号一览 操作系统 PlatformID 主版本号 副版本号 Windows2000 2 ...

操作系统之进程的状态和转换详解

进程的状态和转换三态模型一个进程从创建而产生至撤销而消亡的整个生命周期,可以用一组状态加以刻划,根据三态模型,进程的生命周期可分为如下三种进程状态: 1. 运行态(running):占有处理器正在运...

我来说说操作系统中 死锁与饥饿的区别辨析

我觉得可以这么理解死锁和饥饿的区别,首先死锁是同步的,饥饿时异步的。也就是说,死锁可以认为是两个线程或进程同时在请求对方占有的资源,饥饿可以认为是一个线程或是进程在无限的等待另外两个或多个线程或进程占...

网站流量统计,java+jsp 获取访客浏览器,真实ip,操作系统,来源

公司最近在做官网,需要做流量统计,发现网上关于这一块的东西比较杂乱。整理了一下,以后备用 ------------------------------------------------------...

操作系统实验之批处理系统中作业调度

smilesword.com 1.实验目的 加深对作业调度算法的理解。 2.实验内容 此实验模拟批处理系统中的作业调度,并采用响应比高者优先算法作为作业调度算法。 3.实验说明 从输入...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:操作系统
举报原因:
原因补充:

(最多只允许输入30个字)