操作系统的特征

操作系统的特征包括并发、共享、虚拟和异步,以下为你详细阐述:

  • 并发
    • 定义:并发是指两个或多个事件在同一时间间隔内发生。在操作系统中,多个程序或任务在宏观上是同时运行的。虽然在单处理器系统中,同一时刻实际上只能有一个程序在处理器上执行,但通过操作系统的调度算法,处理器在多个程序之间快速切换,使得它们在一段时间内都能得到执行,从用户的角度来看,就好像这些程序在同时运行一样。而在多处理器系统中,多个程序可以真正地同时在不同的处理器上并行执行。
    • 实现方式:操作系统通过进程和线程的管理来实现并发。进程是资源分配的基本单位,线程是处理器调度的基本单位。操作系统为每个进程或线程分配一定的时间片,当时间片用完后,就会暂停当前进程或线程的执行,切换到其他进程或线程,以此实现多个程序的并发执行。
    • 作用:提高系统资源的利用率,让多个程序能够同时运行,充分利用处理器、内存、I/O设备等资源,减少资源的空闲时间。同时,也能提高系统的响应速度,使得用户可以同时进行多个任务,例如同时进行文件下载、音乐播放和文档编辑等操作,而不必逐个顺序执行,从而提高了用户的工作效率和使用体验。
  • 共享
    • 定义:共享是指系统中的资源可供多个并发执行的进程共同使用。根据资源的不同特性,共享方式可分为互斥共享和同时共享。
    • 共享方式
      • 互斥共享:有些资源在同一时刻只能被一个进程使用,这种资源称为临界资源,如打印机、磁带机等。当一个进程正在使用这类资源时,其他进程必须等待,直到该进程使用完毕并释放资源后,其他进程才能使用。
      • 同时共享:有些资源可以被多个进程同时访问和使用,如内存、磁盘等。多个进程可以同时将各自的数据和程序代码存放在内存的不同区域,也可以同时对磁盘上的不同文件进行读写操作。
    • 实现机制:为了实现资源的共享,操作系统需要提供相应的同步机制,如信号量、互斥锁等,来协调多个进程对共享资源的访问,确保资源的正确使用和数据的一致性。例如,通过信号量可以控制同时访问某一共享资源的进程数量,当信号量的值为0时,表示资源已被占用,其他进程需要等待;当信号量的值大于0时,进程可以获取资源并将信号量的值减1,使用完资源后再将信号量的值加1,以释放资源供其他进程使用。
  • 虚拟
    • 定义:虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。操作系统中的虚拟技术主要有虚拟处理器、虚拟内存、虚拟设备等。
    • 虚拟技术类型
      • 虚拟处理器:通过分时复用技术,将一个物理处理器虚拟成多个逻辑处理器,每个逻辑处理器可以被一个进程或线程使用,使得多个进程或线程可以并发执行,好像每个进程或线程都有自己独立的处理器一样。
      • 虚拟内存:虚拟内存技术将硬盘的一部分空间模拟成内存使用,使得系统可运行的程序大小不受实际物理内存的限制。操作系统将程序中当前不使用的部分暂时存放在硬盘上,当需要使用时再将其调入内存,同时将内存中暂时不用的部分调出到硬盘上,这种换入换出的操作对用户是透明的。
      • 虚拟设备:虚拟设备技术可将一台物理设备虚拟成多台逻辑设备,供多个进程同时使用。例如,通过假脱机技术(SPOOLing),可以将一台物理打印机虚拟成多台逻辑打印机,每个进程都可以向自己的逻辑打印机发送打印任务,而不必等待其他进程打印完成,提高了打印机的利用率。
    • 优势:虚拟技术提高了资源的利用率和系统的灵活性。通过虚拟处理器,多个进程可以共享一个物理处理器,提高了处理器的利用率;虚拟内存使得程序可以在内存不足的情况下运行,扩大了程序的运行空间;虚拟设备使得多个进程可以同时使用同一台物理设备,提高了设备的并发度和利用率。
  • 异步
    • 定义:在多道程序环境下,由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进。每个进程在执行过程中可能会因为等待某个事件的发生(如等待用户输入、等待I/O操作完成、等待获取共享资源等)而暂停,当该事件发生后,进程才会继续执行。由于这些事件的发生时间是不确定的,因此进程的执行具有异步性。
    • 表现形式:进程的异步性表现为进程的执行顺序和执行时间的不确定性。即使是相同的程序和输入,在不同的运行环境下,由于系统资源的分配情况和其他进程的干扰,其执行顺序和执行时间也可能不同。例如,两个进程都需要使用打印机进行打印,它们的打印请求可能会因为打印机的繁忙程度和操作系统的调度策略而以不同的顺序得到执行,而且每个进程的打印时间也会受到其他因素的影响,如打印文件的大小、打印机的速度等。
    • 影响:异步性给操作系统的设计和实现带来了一定的复杂性,因为操作系统需要处理各种不确定的情况,确保系统的稳定性和正确性。同时,对于应用程序开发者来说,也需要考虑到进程的异步执行可能带来的问题,如数据竞争、死锁等,并采取相应的措施来保证程序的正确性和可靠性。然而,异步性也是操作系统能够高效运行的关键之一,它使得操作系统能够充分利用系统资源,在多个进程之间进行合理的调度和分配,提高系统的整体性能。
#牛客创作赏金赛##校招求职有谈薪空间吗#
操作系统I 文章被收录于专栏

操作系统(Operating System,简称 OS)是管理计算机硬件与软件资源的核心程序,是用户与硬件之间的桥梁,也是计算机系统的核心组成部分。

全部评论

相关推荐

04-17 23:37
门头沟学院 Java
18岁,网吧老板烟头摁灭在《C语言入门》封面上:“这行来钱快。”你填志愿时勾选“计算机科学与技术”,屏幕右下角的QQ宠物正啃着像素化的生日蛋糕。母亲端来泡面的蒸汽里,“Java方向”的选项框洇开了水渍。  20岁,凌晨的机房,教授敲着掉漆的键盘:“一个分号写错,整个系统就能崩溃。”你删掉第17行代码里的逻辑错误,走廊尽头的服务器指示灯猩红闪烁,像老板承诺的年底分红。  22岁,秋招会上大厂HR把你的简历推回来:“我们只要985、211的。”考研失败那夜,你在后街烧烤摊撕碎一沓Leetcode打印稿,纸屑飘成区块链白皮书的形状。最终进了外包公司,发现甲方需求文档漏洞百出,项目经理却说“能跑就行”。  25岁,相亲对象听说你996,第二次约会就没了下文。在出租屋改bug到凌晨三点,合租室友的醉酒呕吐声混着编译器报错音。朋友圈弹出前室友的动态——挂科四门的家伙正晒字节工牌,配文“终于年薪三十万”。  28岁,跳槽到创业公司首周,女儿确诊肺炎。你在儿童医院走廊用笔记本紧急修复生产环境故障,点滴声与服务器日志滚动节奏莫名同步。天亮时发现少写一个异常捕获,修改时打翻的退烧药浸透了键盘。  30岁,考过系统架构师那天,公司宣布解散。抱着盆栽离开写字楼时,玻璃幕墙倒映出你稀疏的头顶——和隔壁“元宇宙孵化基地”广告屏里的虚拟发量一样虚幻。妻子发来语音:“早教班催缴下半年费用”。  35岁,转行做的IT培训班只剩三个学员。某晚教儿子用Scratch,他指着你珍藏的《Thinking in Java》说:“爸,现在都学Go语言了。”书页间夹着的2003年微软认证证书,折痕深得像IE浏览器的退役公告。  40岁,送外卖途中撞见前同事。他的特斯拉方向盘上挂着“XX科技CTO”工牌,递来的烟盒印着区块链峰会logo。你捏紧电量只剩18%的二手电瓶车钥匙,听他摇上车窗前的最后一句话:“当年你写的代码从不出bug”。  50岁,儿子填报志愿那晚,你找出泛黄的机械键盘。“爸,你做过最牛的项目是什么?”窗外的无人机表演照亮天际,手机突然亮起——某P2P公司需要抢救遗留系统,时薪80。你默默把布洛芬塞进背包。  55岁,腰椎间盘突出让你告别编码。在某大厦当夜间网管的雨夜,监控屏里年轻人争论着:“ChatGPT根本写不了核心代码!”“未来不需要程序员!”你擦拭着钥匙扣上的32GB古董U盘,里面存着1999年写的第一个“Hello World”。  60岁,同学群转发“量子计算与AI替代”研讨会直播链接时,你正给孙子组装二手乐高机器人。孩子突然举起你1998年的软盘:“爷爷,这是你小时候的WiFi吗?”
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务