操作系统笔记1,操作系统笔记

操作系统概论

总括机体系由硬件和软件两局地组成。硬件指总计机的次第部件,包罗:存储器、处理器、输入/输出设备及电源、机箱等。软件是指存在总括机体系中或外部存款和储蓄器储器中的程序及数量的聚众。

处理器软件分为系统软件和使用软件。

系统软件是总计机厂商为了方便用户采纳计算机而驻存在总括机硬件(如硬盘和软盘)内的系统辅助程序。首要的种类软件蕴含:操作系统、编译息争释程序、汇编制程序序、连接装入程序、编辑程序和设施驱动程序等。

行使软件是用户为了专门的行使指标,向电脑厂商或其余软件商购买的依然本人成本的化解某一类难题的软件。典型的有:数据库管理软件、图像处理软件、各个办公软件和杀毒软件等。

其间操作系统是一种主要的、最大旨的、最关键的系统,也是最庞大、最复杂的类别软件。

操作系统笔记壹,操作系统笔记

操作系统笔记(八)进度同步附加篇,操作系统笔记

  • 死锁

  • monitor

  • condition variable(c为monitor内的进度扩张主动挂起效果)

死锁 monitor condition
variable(c为monitor内的长河增添主动挂起效率)…

操作系统笔记,

一.一 什么是操作系统

经常把操作系统定义为用于控制和管理总结机系统财富,方便用户选用的顺序和数据结构的集纳。

(一)系统看法——总括机能源管理

在电脑体系中,CPU是电脑硬件的为主,是总结机体系的灵魂;操作系统则是应用软件的主导,是电脑连串的大脑,是漫天系统的主宰中央,是计算机或智能控制和管理种类中要害的、最关键的、最复杂的系统软件。

处理器连串内运转的顺序无时无刻地争夺计算机有限的财富,操作系统的职能在于组织和管理整个电脑类别的硬件和软件能源,在用户和次序之间分配系统财富,使之协调一致、高效地做到各样繁复的天职。

(二)用户意见——用户选用微型总计机的界面

通过操作系统,总括机能提供越多、质量更加高的劳务。安装分歧的操作系统,显示在用户眼下将会是一心差别的两类“虚拟”计算机,因而操作系统是用户与电脑硬件之间的接口。用户一般通过以下办法获得总括机类别提供的劳动。

壹指令方式:通过键盘输入有关命令直接运用计算机,以获得总结机所能提供的劳动,也得以将若干限令集中在1个文书中,以批处理的不二等秘书籍连接运转命令,获得多样劳动。

2连串调用:用户可在应用程序中调用操作系统向用户提供的服务程序,以获得系统服务。

操作系统笔记1,操作系统笔记。叁图形界面:用户能够在窗口环境中通过鼠标、按键、菜单和对话框等方法控制总括机。

(三)软件观点——程序和数据结构的集合

操作系统是直接与硬件相邻的率先层软件,是由大批量极致错综复杂的体系先后和许多的数据结构集成的。在计算机中的全部软件中,操作系统起到了主导和控制的成效,此外软件的运作都要依赖他的支撑。操作系统是在系统中永远运行的最好程序。

操作系统概论

微型计算机种类由硬件和软件两片段构成。硬件指总计机的相继部件,包含:存款和储蓄器、处理器、输入/输出设备及电源、机箱等。软件是指存在计算机连串中或外部存款和储蓄器储器中的程序及数据的成团。

总结机软件分为系统软件和应用程式。

系统软件是电脑厂商为了方便用户使用电脑而驻存在总计机硬件(如硬盘和软盘)内的体系扶助程序。首要的系统软件包罗:操作系统、编译和解释程序、汇编制程序序、连接装入程序、编辑程序和设施驱动程序等。

动用软件是用户为了专门的行使指标,向电脑厂商或其余软件商购买的依然本身支付的缓解某一类难题的软件。典型的有:数据库管理软件、图像处理软件、各类办公软件和杀毒软件等。

里头操作系统是一种首要的、最基本的、最关键的系统,也是最宏大、最复杂的系列软件。

操作系统笔记

一、批处理、分时、实时是操作系统的二种基本类型

2、分布式系统是由若干个总计机经互连互联网连接而成的,这个电脑既能够单独工作,又能协同工作。可达成系统内的财富管理,任务动态分配,并能并行地运维分布式程序。
分布式系统是网络操作系统的越来越高级的款型并维持了网络操作系统的方方面面效果。

三、宗旨态和用户态
宗旨态(系统态):能够进行总体指令,访问具有寄存器和内部存储器区域;平时,操作系统内核运维在这一场所下。
用户态:只好够推行部分钦命指令,访问钦赐的寄存器和内部存款和储蓄器区域;平日,用户的程序运转在该境况下。

肆、进度序控制制块(Process Control Block, PCB),PCB
是先后出现执行的内核!尊崇从前经过的现场消息。

伍、原语:是机器指令的延长,由若干条机器指令构成,用以完结一定效能的壹段程序。
原语和机器指令类似,其性状是履行进程中不相同意被中断;原语的实施是各种的而不恐怕是出新的。
原语是原子操作,要么全做,要么全体不做。

陆、进度家族树是壹棵有向树(如下图),结点代表经过。一棵树表示二个家门,根结点为该家族的祖先(Ancestor)。PCB中设置有家族关系的表项。
子进程能够继续父进度所拥有的能源。
在撤消父进程时,子进度也不可能不被吊销。

图片 1

在Linux中的僵尸进程和孤儿进度。

柒、进度序控制制原语 

成立、撤废进程以及成功经过各状态之间的转移。由拥有特定功用的原语实现。
经过创制原语
进度打消原语
堵塞原语
晋升原语
挂起原语
激活原语

8、创制原语(Creation)

成立原语:正是系统为经过成立一个进度序控制制块PCB,并填写PCB中相应消息项的经过。

玖、进程创制(Create)流程图

图片 2

10、进度创制(Create)程序

 1 #include <stdio.h>
 2 void main(int argc, char *argv[]){
 3     int pid;
 4         /* 调用fork()创建一个子进程 */
 5        pid=fork();
 6          if (pid<0){ /* 创建失败了! */
 7              fprintf(stderr,”Fork failed”);
 8                  exit(-1);
 9         }
10      if (pid==0) { /* child process */
11           printf (“我是子进程 \n\n”); 
12     }
13         else  {/* parent process */
14         printf(“我是父进程 \n\n”);
15     }
16     return 0;}

1一、进度挂起与阻塞有何样不相同?

进程的挂起: 系统在超过一定的时间没有任何动作。 
进程的阻塞:进程因等待某一件事情(如等待I/O设备)而暂时不能运行的状态,此时即使处理机空闲,进程也无法使用。系统中处于阻塞态(又称封锁态、等待态、睡眠态)的进程也可以有多个。 

进程的组成 
程序: 描述了进程所要完成的功能。 是进程存在的物质基础。 
数据: 是程序加工的对象。 
进程控制块PCB:用来描述进程的一切静态和动态的特征,操作系统只能通过它来感知和管理进程。每个进程都有且仅有一个进程控制块。 
进程控制块的内容:PCB的具体内容随不同系统而异,一般包括以下信息: 
· 进程标识: 唯一地标识进程的名称或代码 
· 进程状态: 标识进程是运行态、就绪态或阻塞态 
· 进程实体: 指示进程的程序部分和数据部分在存储器中的位置和大小 
· 调度信息(优先数): 确定就绪进程转为运行进程的优先级 
· 资源信息: 描述内存占用、外设占用等信息 
· 现场信息: 包括程序计数器、程序状态字、累加器、变址寄存器的当前值 
· 进程通信信息:用于进程间的通信

12、进度挂起、阻塞、睡眠的不相同

堵塞:是过程在等候某种财富,然则无法登时得到,,必须等待其他进度释放能源才能三番五次,属于被动不可能赢得时间片,内核就切换别的进度运维
休眠:壹般为主动式的放任壹段CPU时间
挂起:是运作时刻片到了,内核要调度其余进程运营,被动式的错过CPU

 13、信号量: 

复信号量: 1九陆5年,由荷兰王国大家Dijkstra提议的一种新鲜整型变量。
非实信号量定义:三个数据结构+1个基本操作
struct semaphore
{
int value; //记录唤醒操作个数
PCB *queue;//等待在该复信号量上的进程
}
P(semaphore s); //消费提醒操作
V(semaphore s); //发生唤醒操作
P的名目来源于泰语的proberen,即test
V的称号也来自匈牙利语verhogen(increment)

1肆、互斥与协办的界别

联机是一种特别复杂的排外,而互斥是一种独特的联合。
互斥:是指某一能源同时只同意四个访问者对其实行访问,具有唯1性和排它性。但互斥无法界定访问者对能源的拜访顺序,即访问是严节的。
联手:合营进程之间协调互动的行事,控制本人的履行进程,因此发生的相互合营,相互等待的掣肘关系,即操作是不变的。

15、AND信号量

AND连续信号量:为化解互相带来的死锁难点,在wait 操作中引进AND
条件,其核心思考是将进程在全路运维进程中所须求的拥有临界能源,贰回性地全部分配给进度,用完后三回性释放。对若干个临界能源的分红,选拔原子操作方法:要么全体分配到进度,要么一个也不分红。

用功率信号量化解了过多合伙和排斥难点,但在化解难点的进程中,大家也发现还留存有的标题,如:

  • 在劳动者和买主难点中四个P操作的地点不可能颠倒;
  • 文学家进餐难题中的死锁现象等。
    这一个题材的出现促使AND功率信号量的产生

16、管程

管程 (丹麦语:Monitors,也号称监视器)
是壹种程序结构,结构内的七个子程序(对象或模块)形成的多个工作线程互斥访问共享能源。这么些共享财富壹般是硬件装置或一堆变量。
管程达成了在三个时间点,最两只有2个线程在举办政管理程的某部子程序。与那个经过改动数据结构达成互斥访问的并发程序设计相比较,管程完结不小程度上简化了先后设计。

17、操作系统概念管程、管道、通道什么不一致!

1、通道命令

  • 通道命令
           
    规定配备的操作,每壹种通路命令规定了设备的壹种操作,通道命令一般由命令码/数据/主存地址/传送/字节个数及标志码等片段构成。
  • 大路程序
           
    是一组通道命令规定通道举办三次输入输出操作应做的干活,这一组命令就重组了二个坦途程序。
    二、管道机制
      把第一条命令的输出作为第二条命令的输入,如此实行连接的技术。
    3、管程
      代表共享财富的数据结构,以及由对该共享数据结构实施操作的1组经过所组成的能源管理程序,共同整合了八个操作系统的能源管理模块,我们称为管程。
    1八、进度的一只与通讯

图片 3

 

操作系统笔记
壹、批处理、分时、实时是操作系统的二种为主项目
2、分布式系统是由若干个总计机经互连网络连接而成的…

1.2 操作系统的向上

1.一 操作系统定义

万般把操作系统定义为用于控制和保管总结机系统财富,方便用户使用的次第和数据结构的聚众。

(1)系统看法——总结机能源管理

在总计机种类中,CPU是总括机硬件的基本,是电脑连串的心脏;操作系统则是计算机软件的着力,是总计机种类的大脑,是全部种类的决定中央,是总计机或智能控制和保管体系中至关心重视要的、最要紧的、最复杂的种类软件。

微型总括机类别内运营的次第无时无刻地争夺总计机有限的能源,操作系统的遵从在于组织和保管整个电脑类别的硬件和软件财富,在用户和次序之间分配系统能源,使之协调壹致、高效地形成各个复杂的职责。

(二)用户意见——用户使用总括机的界面

由此操作系统,总括机能提供更加多、品质越来越高的劳务。安装分歧的操作系统,呈以后用户前边将会是一点一滴两样的两类“虚拟”总结机,由此操作系统是用户与总括机硬件之间的接口。用户1般经过以下方法获得总计机连串提供的劳动。

1限令情势:通过

 

操作系统概论
计算机种类由硬件和软件两有的构成。硬件指总括机的逐条部件,包含:存储器、处理器、输…

一.早期的电脑和人工操作办法

在早期的计算机种类中,每三次独自的周转都亟待过多的人工干预,操作进程烦琐,占用机时多,也很简单生出错误,在1个顺序的运作进度中要独占系统的凡事硬件能源,设备利用率很低。

二.脱机输入/输出和批处理系统

(壹)脱机输入/输出

为了解决人工干预与CPU速度不相配的争辩,进步计算机的行使频率,在微型总括机中布署了“监察和控制程序”。用户的控制指令和操作步骤能够写在源程序前或特别的控制卡片上。“监控程序”先读入控制命命令,并按命令的提醒一步一步自动执行,那便是“操作系统”的雏形。

为了消除慢速输入/输出设备与CPU速度的不相配难点,可将用户打在卡片上或纸带上的次序和多少经过外围小总括机预先输入到磁带上,运营时再从磁带上火速读入内部存款和储蓄器,输出也同样通过磁带中间转播。这种办法正是“脱机输入/输出”。

(二)批处理种类

脱机输入/输出进一步进步了极端及的周转成效,但自前1个惩治运维甘休到起步后一个程序运转那段时日内,程序员或操作员还需要开始展览过多的人工干预。批处理的主干怀念是:操作员取来一堆作业,将它们输入到磁带中,操作系统先从磁带中将第二个作业读入内部存款和储蓄器,运营它运维,并将运维结果输出到另多少个磁带中,当第一个程序运营达成,操作系统自动的从输入磁带上读入下一个学业,并给予运维和输出,直到整批作业全体处理完成。

鉴于系统作业是巨大地展开始拍片卖,但内存中智能保持1个运作作业,故该类系统又称之为单道批处理体系。