操作系统
Charming2017
What I’m doing right now, I’m chasing perfection.——Kobe Bryant
展开
-
多级页表计算
多级页表例如,某系统按字节编址,采用40位逻辑地址,页面大小是4KB,页表项大小是4B,假设采用纯页式存储,则采用几级页表,页内偏移量多少40位 = {28位页号={根据页表大小得到页号一级、二级},12位偏移量}首先,这里的页表项大小已经给出来了,正常我们是可以自己算的,比如一块内存4GB,页面大小4KB,有多少个内存块呢,2^32 / 2^12 = 2^20 也就是我们最多要用20位才能表示一个内存块号,一般计算机都是8的整数倍,所以页表项占3B回到题目,页内偏移量大小,就是指一个页面有几位因原创 2021-12-21 11:35:13 · 4594 阅读 · 1 评论 -
I/O设备无关性是什么
I/O设备无关性I/O设备无关性是指应用程序独立于具体使用的物理设备优点用户可以抽象使用I/O命令,还可以使用抽象的逻辑设备名来使用设备提高操作系统的可移植性和容易适应性,对操作系统而言,新增或者减少新的设备驱动程序,不需要将整个操作系统进行重新编译,就能很方便I/O设备安装...原创 2021-12-12 12:38:09 · 2765 阅读 · 0 评论 -
IO系统引入缓冲机制原因
IO系统引入缓冲机制原因缓和cpu 和 I/O 设备之间速度不匹配的矛盾,因为cpu 的运算效率远远高过I/O 设备的速率减少对cpu 的中断频率,放宽对中断响应时间的限制提高cpu 和 I/O 设备之间的并行性以上,引入缓冲机制,可以显著的提高cpu 和 I/O 设备 之间的并行操作程度,提高操作系统的吞吐量和设备的利用率...原创 2021-12-12 12:24:28 · 1946 阅读 · 0 评论 -
读者-写者问题
读者-写者问题有读者和写者两组并发进程,共享一个文件,要求:允许多个读者进程同时对共享文件执行读操作只允许一个写者进程往里写数据任意一个写者进程在完成写操作之前不允许其他读者进程或者写者进程访问共享文件写者执行写操作前,应等到已有的读者进程和写者进程全部退出关系分析:只有2类进程,写进程、读进程互斥关系:写进程-写进程,写进程-读进程semaphore rw = 1;//用于实现对共享文件的互斥访问int count = 0;//用于统计读者进程访问文件数量,第一个读者上锁,最后原创 2021-11-08 20:01:09 · 234 阅读 · 0 评论 -
吸烟者问题
吸烟者问题假设一个系统中有3个抽烟者进程,还有一个供应者进程。每个烟民不停地卷烟并抽掉它,但是一支香烟要烟民自己组装,分别需要三种材料:烟草、纸、胶水。第1个烟民自备烟草,第2个烟民自备纸,第3个烟民自备胶水。供应者供应烟民需要的其他2种材料,烟民抽完后会通知供应者他抽完了,然后供应者就会继续提供。这个过程一直重复,我们要实现让3个烟民轮流抽烟semaphore offer1 = 0;//烟草+纸semaphore offer2 = 0;//烟草+胶水semaphore offer3 = 0;//纸原创 2021-11-08 12:12:21 · 325 阅读 · 0 评论 -
生产者-消费者同步互斥问题
信号量机制-进程同步解决方法3用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而实现进程互斥(进程对临界资源的单独访问),进程同步(进程对临界资源的访问顺序)问题信号量听名字,好像是个跟信号、电气沾边的东西,其实信号量就是一个变量,用来表示系统资源数量,比如打印机的数量,也可以理解为操作系统层面的变量,每个进程共享注意信号量可以是整型变量,也可以是个结构体变量原语就是一种特殊的程序段,它的执行是一气呵成,不可被中断的,比如A用户先检查厕所没人,然后进去上锁,这两个步骤是连贯的;试想如原创 2021-11-06 09:35:02 · 1565 阅读 · 0 评论 -
进程同步和互斥的联系
进程同步和互斥的联系进程与进程之间存在两种制约关系,同步和互斥同步是由于并发进程之间需要协调完成相同一个任务,而引起的联系,比如2个人一起去打球,要完成这个任务,要1个人先把球带过来,另外1个人才能打,也就是B进程需要等待A进程的数据,否则B进程没办法完成任务的一种制约关系互斥是并发进程之间,相互竞争系统中的临界资源引起的,比如2个人去打球,球就是临界资源,要么A占着,要么B占着,是一个进程等待另外一个进程已经占用的,必须互斥使用资源时的一种制约关系...原创 2021-11-04 15:20:50 · 902 阅读 · 0 评论 -
系统调用与库函数的区别
系统调用与库函数的区别库函数是应用程序的一部分,运行在用户空间中,而系统调用是属于操作系统部分,是操作系统内核给用户提供的接口有的库函数内部封装了系统调用的代码,是对系统调用的进一步封装,有的库函数没有用到系统调用系统调用过程:在用户态下,传入参数,比如打开哪个文件,传入文件名在用户态下,发出trap指令,立即引发一个内中断,让cpu进入核心态由操作系统内核程序处理系统调用请求,比如从磁盘读入文件内容到内存返回应用程序注意,我们发出系统调用请求是在用户态下的,而系统调用的实际处理是在核心原创 2021-10-25 18:25:12 · 383 阅读 · 0 评论 -
虚拟内存管理
虚拟内存是什么,为什么要引入虚拟内存?虚存空间的大小由什么因素决定,虚拟内存时怎么解决问题的....原创 2021-09-25 11:22:55 · 161 阅读 · 0 评论 -
认识I/O管理
I/O设备的基本概念与分类什么是I/O设备将数据Input or Output 计算机的外部设备按使用特性人机交互类外部设备键盘、鼠标存储设备移动硬盘网络通信设备调制解调器按传输速率分类低速设备中速设备高速设备按信息交换的单位分类块设备(传输块,可以寻址/随机访问)字符设备(传输慢,不可寻址,常采用中断驱动方式)...原创 2021-09-21 00:01:33 · 234 阅读 · 0 评论 -
文件系统实例(操作系统)
文件系统实例,手动模拟在根目录添加唐诗.txt文件,文件系统如何变化,打开文件读出文件数据流程又是怎么样的过程...原创 2021-09-18 13:46:45 · 305 阅读 · 0 评论 -
文件管理系统(操作系统)——9张思维导图
假设你要删除文件D:/工作目录/学生信息.xlsx的最后100条记录,你要先发出系统delete调用请求,系统根据存放路径一层一层查找文件目录,根据要删的最后100条找到逻辑地址,最后转换成物理地址,定位到在哪个磁盘块,通知磁盘设备擦除二进制数据,最后回收空闲磁盘块资源...原创 2021-09-17 20:36:43 · 7133 阅读 · 2 评论 -
操作系统概述
01概论概念:操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调 度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;它是计算机系统中最基本 的系统软件操作系统是系 统资源的管理者向上层提供方便易用的服务是最接近硬件的一层软件没有任何软件支持的计算机成为裸机。在裸机上安装的操作系统, 可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能 更强、使用更方便的机器 通常把覆盖了软件的机器成为扩充机器,又称之原创 2021-09-15 11:35:58 · 152 阅读 · 0 评论 -
虚地址转换为内存地址(操作系统)——简单粗暴
虚地址转换为内存地址虚地址的由来为什么内存需要虚地址,如果没有虚地址,那我们是怎么给作业划分内存空间的呢刚开始是直接用物理地址,人们把内存分成2块,操作系统区和用户区,用户程序(作业/进程)放在用户区,但是这时候的内存只能有一道用户程序,每条指令直接用物理地址计算,但是这样的带来的问题是并发低,不能同时作业后来,为了能在内存中装入多道程序,且这些程序之间又不会相互干扰, 于是将整个用户空间划分为若干个固定大小的分区,在每个分区中只装入一道作业,这样就形成了最早的、最简单的一种可运行多道程序的内存管理原创 2021-09-15 00:53:16 · 1649 阅读 · 0 评论 -
内存空间3种扩容方式(含虚拟内存)
思考一下,GTA游戏60GB,讲道理运行前应该把60GB数据放入内存,然而我的电脑只有4GB,但是为什么游戏可以正常运行?在了解内存空间的分配与回收后,我们讲下内存空间的扩充......原创 2021-09-14 11:39:47 · 3056 阅读 · 0 评论 -
内存空间的分配与回收
内存空间的分配与回收,举个不太恰当的栗子如图书馆的书架,图书怎么存储容易访问,连续编址和非连续编址有什么区别......原创 2021-09-12 16:56:50 · 4337 阅读 · 2 评论 -
进程死锁的产生和解决策略
进程死锁是怎么产生的,有几种解决策略,死锁、饥饿和死循环有什么区别,银行家算法、安全性算法怎么简单理解...原创 2021-09-09 11:44:52 · 487 阅读 · 1 评论 -
内存管理概念
内存管理概念内存空间的分配与回收给进程分配内存空间,操作系统需要记录哪些内存区域分配出去了,哪些还空着当进程运行结束后,操作系统如何回收内存空间内存空间的扩充GTA游戏60GB,讲道理运行前应该把60GB数据放入内存,然而我的电脑只有4GB,但是为什么游戏可以正常运行?虚拟技术(操作系统的虚拟性)地址转换绝对装入适用单道程序环境,注意此时还没有操作系统编译时产生物理地址静态重定位装入适用早期多道程序环境,此时出现操作系统装入时将逻辑地址转换成物理地址动态重定位装入适用现代操作系原创 2021-09-07 19:40:48 · 163 阅读 · 0 评论 -
内存基础知识
什么是内存?内存怎么来的呢?内存主要做什么呢?带着问题思考,我们会在文章中找到答案原创 2021-09-07 17:33:28 · 602 阅读 · 0 评论 -
进程同步和互斥
进程同步和互斥一、进程同步和互斥概念二、进程互斥的软件实现方法三、进程互斥的硬件实现方法四、信号量机制可以解决进程同步、互斥问题用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而实现进程互斥(进程对临界资源的单独访问),进程同步(进程对临界资源的访问顺序)问题信号量听名字,好像是个跟信号、电气沾边的东西,其实信号量就是一个变量,用来表示系统资源数量,比如打印机的数量,也可以理解为操作系统层面的变量,每个进程共享注意信号量可以是整型变量,也可以是个结构体变量原语就是原创 2021-09-07 11:45:13 · 350 阅读 · 0 评论 -
处理机的调度
处理机的调度一、处理机调度概念基本概念出现原因,处理器的数量远远少于进程数量,这样一来所有进程没办法同时处理,这个时候需要确定某种规则来决定这些进程的处理顺序,所以引进调度概念按照某种算法选择一个进程将处理机分配给它例子1,宿舍只有1个厕所,早上几个人都要上厕所,厕所该被谁占三个层次高级调度,又叫作业调度按照某种规则,从等候队列中选择合适的作业将其调入内存,并为其创建进程中级调度,又叫内存调度按照某种规则,从挂起队列中选择合适的进程将其数据调回内存低级调度,又叫进程调度按照原创 2021-09-07 10:59:51 · 365 阅读 · 1 评论 -
几种调度算法(大白话)
思考每种调度算法,它的算法思想,它是想解决什么问题,它的算法规则这种调度算法作用于作业调度(高级调度)还是进程调度(低级调度),注意这里没有涉及内存调度(中级调度)它是抢占式的还是非抢占式的,抢占的意思是每每就绪队列新进程到达的时候,要去check是否要发生调度,非抢占就是这种情况不需要check,但是当前运行的进程还是会根据时间片用完,或者自己运行时间用完主动撤出这种调度算法有什么优点缺点是否会导致其他进程永远不会得到处理机资源,即是否导致饥饿?原创 2021-09-04 15:16:03 · 2658 阅读 · 0 评论 -
进程、线程、程序、任务和作业的联系
进程和线程关系调度。在传统操作系统中,拥有资源和独立调度的基本单位都是进程,在引入线程的操作系统中,线程是独立调度的基本单位,进程是拥有资源的基本单位。这样一来,在同个进程内,线程之间的切换,不会引起进程之间的切换,因为进程每次切换都是有环境切换花销的。只有不同进程之间的线程切换,才会引起进程切换,2种方式平均下来减少环境切换,也就提高了系统并发度。拥有资源。不论是传统操作系统还是引入线程的操作系统,进程都是拥有资源的基本单位,而线程不拥有系统资源(只有丁点),如果线程设置系统资源,那同一进程内的线程原创 2021-09-01 15:48:39 · 2133 阅读 · 0 评论 -
操作系统进程篇(5)
QQ应用程序,是一个操作系统进程为什么可以一边视频聊天,一边文字聊天,一边传输文件呢?3块程序代码,用串行执行肯定不行,所以引入线程,提高进程内并发度!!!原创 2021-08-30 21:15:59 · 121 阅读 · 0 评论 -
操作系统进程篇(4)
进程通信 什么是进程通信? 进程通信就是指进程之间的信息交换 进程是分配系统资源的单位,因此每个进程拥有的内存地址空间相互独立 为保证安全,一个进程是不能直接访问另外一个进程,所以为保证进程间安全通信,操作系统提供了一些方法 如何进程通信 共享存储 在内存设置一个共享空间 要互斥地访问共享空间 2种方式 基于数据结构(低级)...原创 2021-08-28 17:35:37 · 75 阅读 · 0 评论 -
操作系统进程篇(3)
进程控制原创 2021-08-28 17:28:38 · 95 阅读 · 0 评论 -
简单聊聊进程
进程是什么?就是一个运行中的程序的实例!!!为什么要引入进程?在多道程序同事运行的背景下,进程之间需要共享系统资源,因此会导致各程序在执行过程中出现相互制约的关系,程序的执行会表现出间断性的特征。这些特征都是在程序的执行过程中发生的,是一种动态的过程传统的程序本身是一组指令的集合,是一个静态的概念,无法描述程序在内存中的执行情况,换言之,就是我们没有办法从程序的字面上看到他是何时执行,何时停顿,也无法看到他跟其他执行程序的关系。所以,为了解决这些问题,为了深刻描述程序动态原创 2021-08-28 15:14:27 · 85 阅读 · 0 评论 -
操作系统进程篇(1)
进程基本概念、特征原创 2021-08-28 10:55:07 · 74 阅读 · 1 评论 -
操作系统进程篇(2)
1. 操作系统进程状态以及状态切换原创 2021-08-28 10:38:21 · 83 阅读 · 0 评论