
操作系统
文章平均质量分 83
Zpadger
这个作者很懒,什么都没留下…
展开
-
操作系统一二章作业答案
因为都是按照自己的理解写出来的,也不知自己的答案对不对,希望大家能够踊跃讨论。提供自己宝贵的意见,不胜感激。1.1在多道分时环境下,有几个用户同时使用一个系统,这种情况可能导致各种安全问题。a. 列出此类的问题。b.在一个分时系统中,能否像在特殊用途系统中一样确认同样的安全程度?并解释它。答:a.可能出现的问题:(1) 因为多道分时环境是采用多道程序批处理系统和分时系统结原创 2016-09-28 22:20:05 · 24899 阅读 · 0 评论 -
进程、轻量级进程(LWP)、线程
转:进程、轻量级进程(LWP)、线程转:关于进程、线程和轻量级进程的一些笔记进程、轻量级进程(LWP)、线程进程:程序执行体,有生命期,用来分配资源的实体线程:分配CPU的实体。 用户空间实现,一个线程阻塞,所有都阻塞。 内核实现,不会所用相关线程都阻塞。用LWP实现,用线程组表示这些线程逻辑上所属的进程。进程描述符进程描述符(简称pd, process转载 2016-10-12 22:26:05 · 2256 阅读 · 0 评论 -
临界区算法:Peterson算法与Dekker算法
当时老师在课上讲的时候就没搞懂现在要写作业了果然还是得靠自己学明白啊=_=下面的概念都来自于《操作系统概念》这本书首先说一下临界区问题(Critical Section Problem)临界区的问题的解答必须满足以下三个条件:1) 互斥:如果进程Pi在其临界区内执行,那么其他进程都不能在其临界区内执行。2) 有空让进:如果没有进程在其临界原创 2016-11-04 23:23:44 · 14899 阅读 · 4 评论 -
以生活例子说明单线程与多线程
转载自:薰衣草的旋律的博客阅读目录1. 程序设计的目标2. 单线程多任务无阻塞3. 单线程多任务IO阻塞4. 单线程多任务异步IO5. 单线程多任务,有耗时计算6. 多线程程序7. 多CPU8. 多线程与多进程9. 总结回到顶部1. 程序设计的目标在我看来单从程序的角度来看,一个好的程序的目标应该是性能与用户体验的平衡。当然一个程序是否能够满足用户的转载 2016-10-12 21:28:09 · 1010 阅读 · 0 评论 -
Eisenberg-McGuire算法
An N-Process Solution: Eisenberg and McGuire's AlgorithmThis is a correct solution for the N-process case developed by Eisenberg and McGuire. Earlier solutions had been proposed by Dijkstra, Knuth,转载 2016-11-05 11:50:58 · 4548 阅读 · 0 评论 -
读者-写者问题
读者写者是一个非常著名的同步问题。读者写者问题描述非常简单,有一个写者很多读者,多个读者可以同时读文件,但写者在写文件时不允许有读者在读文件,同样有读者在读文件时写者也不去能写文件。用图来表示的话恩,就是这样问题描述有读者和写者两组并发进程,共享一个文件,当两个或以上的读进程同时访问共享数据时不会产生副作用,但若某个写进程和其他进程(读进程或写进程)同时访问共享数据时则可能转载 2016-11-05 15:36:36 · 23210 阅读 · 2 评论 -
虚拟8086模式
十一.虚拟8086模式继推出80386之后,Intel又推出了80386、Pentium和Pentium PRO。这些处理器都具有 实模式和保护模式两种工作方式。前面已介绍过,实模式与8086兼容,可以运行DOS及 以其为平台的几乎所有软件;但在实模式下,处理器不能发挥自身的优越性能,不能支 持多用户、多任务操作系统的运行。为了充分发挥处理器的功能,同时使DOS及以其为 平台的软件继续有效转载 2016-11-08 20:06:49 · 5803 阅读 · 1 评论 -
操作系统五六章作业答案
习题 5.1为什么对调度程序而言,区分CPU约束程序和I/O约束程序很重要? 答:CPU的成功调度依赖于进程的如下属性:进程执行由CPU执行和I/O等待周期组成,进程在这两个状态之间切换。进程执行从CPU区间开始,在这之后是I/O区间,接着是另一个CPU区间,如此进行下去;最终,最后的CPU区间通过系统请求终止执行。这些CPU区间的长度呈现出指数或超指数形式的频率曲线,具有大量原创 2016-11-14 09:53:08 · 13869 阅读 · 5 评论 -
信号量
转自:http://blog.chinaunix.net/uid-23193900-id-3194924.html1.信号量的概念 信号量的本质是一种数据操作锁,它本身不具有数据交换的功能,而是通过控制其他的通信资源(文件,外部设备)来实现进程间通信,它本身只是一种外部资源的标识。信号量在此过程中负责数据操作的互斥、同步等功能。 当请求一个使用信号量来表示的资源转载 2016-11-23 00:12:32 · 985 阅读 · 0 评论 -
位图
转载自:http://www.cnblogs.com/CareySon/archive/2012/04/25/2470063.html当预留的空间不够满足增长时,操作系统首先会看相邻的内存是否空闲,如果空闲则自动分配,如果不空闲,就将整个进程移到足够容纳增长的空间内存中,如果不存在这样的内存空间,则会将闲置的进程置换出去。 当允许进程动态增长时,操作系统必须转载 2016-11-24 00:31:47 · 1385 阅读 · 0 评论 -
多线程和多进程模型的选用
多线程和多进程模型的选用这里的线程指通过Linux的pthread_create而产生的原生线程,线程资源很宝贵,能被操作系统的任务调度器看见的(不是Python gevent、Gogorouine里的概念); 我们讨论以下两种模型;多进程单线程模型(以下简称为多进程);单进程多线程模型(以下简称为多线程);多进程模型优点编程相对容易;通常不需要考虑锁和转载 2016-10-12 23:41:02 · 711 阅读 · 0 评论 -
操作系统名词解释
第1部分 操作系统概论名词解释脱机输入/输出具体的输入/输出不需要在主计算机上进行的方式也称“脱机输入/输出”批处理作业是由操作系统成批地进行处理,操作系统能自动地从输入池读入下一个作业,并予以运行和输出,如此直到整批作业全部处理完毕。SPOOLING由操作系统将磁盘模拟为输入/输出设备的处理方式称为SPOOLING(Simultaneous Peripheral Oper原创 2016-10-12 23:46:05 · 11679 阅读 · 0 评论 -
操作系统中长期调度、中期调度和短期调度之间的区别
在写操作系统作业查找资料时,发现有个博客关于长期、中期、短期调度的解释十分清晰明了,所以决定转载一下,分享给大家在许多进程或线程都准备使用CPU进行任务处理时,就会存在资源竞争和分配的问题。一般都会将进程或线程先放在一个缓冲池中,等待合适的时机调度程序从中选择一个进程或线程进行交给CPU进行处理。如上图所示,在调度中,分为长期、中期和短期三种。长期调度,转载 2016-10-11 23:00:45 · 2295 阅读 · 0 评论 -
操作系统典型调度算法
转自:点击打开链接在操作系统中存在多种调度算法,其中有的调度算法适用于作业调度,有的调度算法适用于进程调度,有的调度算法两者都适用。下面介绍几种常用的调度算法。先来先服务(FCFS)调度算法FCFS调度算法是一种最简单的调度算法,该调度算法既可以用于作业调度也可以用于进程调度。在作业调度中,算法每次从后备作业队列中选择最先进入该队列的一个或几个作业,将它们调入内存,分配必要的资源,转载 2016-10-23 10:11:19 · 1145 阅读 · 0 评论 -
操作系统三四章作业答案
习题 3.1论述长期、中期、短期调度之间的区别。 答:1) 长期调度(又称作业调度)是从大容量存储设备(通常为磁盘)的缓冲池中选择进程,并装入内存以准备执行。长期调度程序执行得并不频繁,在系统内新进程的创建之间可能有数分钟的间隔,它主要用来控制内存中进程的数量。只有当进程离开系统后,才可能需要长期调度程序。当作业执行完毕时,长期调度还负责回收系统资源。在批处理系统原创 2016-10-23 10:38:40 · 9862 阅读 · 0 评论 -
操作系统总结
转自:点击打开链接第一章 操作系统引论系统的目标:有效性(提高资源利用率和系统吞吐量)、方便性、可扩充性、开放性。有效性和方便性是操作系统最重要两个目标。操作系统的作用:(1) OS作为用户与计算机硬件系统之间的接口(2) OS作为计算机系统资源的管理者(处理器、存储器、I/O设备、数据程序)(3) OS实现了对计算机资源的抽象转载 2016-10-23 10:43:51 · 5092 阅读 · 0 评论 -
进程描述和控制
转自:点击打开链接进程描述和控制一、什么是进程:开发操作系统是为了给应用程序提供一个方便、安全和一致的接口。操作系统是计算机硬件和应用程序之间的一层软件,对应用程序和工具提供支持。目标: 资源对多个应用程序是可用的; 物理处理器在多个应用程序间切换以保障所有程序都在执行中; 处理器和IO设备能得到充分利用。所有现代操作转载 2016-10-23 10:46:13 · 604 阅读 · 0 评论 -
用户级线程和内核级线程的区别
转:用户级线程和内核级线程的区别1 .内核级线程:切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态;可以很好的利用smp,即利用多核cpu。windows线程就是这样的。 2. 用户级线程内核的切换由用户态程序自己控制内核切换,不需要内核干涉,少了进出内核态的消耗,但不能很好的利用多核Cpu,目前Linux pthread大体是这么做的。转载 2016-10-12 22:22:24 · 1197 阅读 · 0 评论 -
Pthread线程库简介
因为转载的别人的转载,所以...先介绍一下什么是Pthread:POSIX线程(POSIX threads),简称Pthreads,是线程的POSIX标准。该标准定义了创建和操纵线程的一整套API。在类Unix操作系统(Unix、Linux、Mac OS X等)中,都使用Pthreads作为操作系统的线程。Windows操作系统也有其移植版pthreads-win32。接下转载 2016-10-12 22:08:19 · 2113 阅读 · 0 评论 -
从Java视角理解系统结构(一)CPU上下文切换
转:从Java视角理解系统结构(一)CPU上下文切换从Java视角理解系统结构(一)CPU上下文切换作者:Minzhou 本文是从Java视角理解系统结构连载文章在高性能编程时,经常接触到多线程. 起初我们的理解是, 多个线程并行地执行总比单个线程要快, 就像多个人一起干活总比一个人干要快. 然而实际情况是, 多线程之间需要竞争IO设备, 或者竞争锁资源,导致往往转载 2016-10-12 22:03:35 · 559 阅读 · 0 评论 -
Context Switch Definition
转:Context Switch DefinitionContext Switch Definition A context switch (also sometimes referred to as a process switch or a task switch) is the switching of the CPU (central pro转载 2016-10-12 22:02:06 · 592 阅读 · 0 评论 -
多线程和单线程的执行效率问题
多线程和单线程的执行效率问题转:平凡之路的博客一提到多线程一般大家的第一感觉就是可以提升程序性能,在实际的操作中往往遇到性能的问题,都尝试使用多线程来解决问题,但多线程程序并不是在任何情况下都能提升效率,在一些情况下恰恰相反,反而会降低程序的性能。这里给出两个简单的例子来说明下:程序1:import threadingfrom time import ctime转载 2016-10-12 21:46:31 · 4678 阅读 · 0 评论 -
操作系统图解
转自:点击打开链接重读William Stallings的Operating System的个人总结,未涉及安全和分布式部分(这部分在英文版中被阉割了)。上一张完成的大图,然后再慢慢画起(在每个图后面加链接看大图)。另外这里只是简单的知识点罗列,同样发布了一篇完整的(2w字,还没来得及校对)总结,欢迎查看。大图 计算机组成 先从最简单的开画,转载 2016-10-23 10:39:25 · 6533 阅读 · 1 评论