为什么不能阻塞态到运行态网!

为什么不能阻塞态到运行态网

趋势迷

为什么不能阻塞态到运行态

2024-07-17 04:25:07 来源:网络

为什么不能阻塞态到运行态

进程状态,为什么不能从阻塞态变为运行态?为什么不能从就绪态变为阻塞...
从阻塞到运行的转换是可以想象的🍃_🪱。假设某个进程在I/O 上阻塞🐼🐂-——🦍,而且I/O 结束👿😗|💀,如果此时CPU 空闲*🌖——🙂,该进程就可以从阻塞态直接转到运行态😑🦑——👺🐊。而另外一种转换(从就绪态到阻塞态)是不可能的🎮_*。一个就绪进程是不可能做任何会产生阻塞的I/O 或者别的什么事情🏵_——🦌。只有运行的进程才能被阻塞☘|🦓🐅。
处于阻塞态的进程缺乏资源🦊🍂|🦏*‍❄,而处于运行态的进程只能给有资源的进程提供CPU😖-🦝🥉,而且CPU在同一刻只能处理一个进程(指的是单核CPU)

为什么不能阻塞态到运行态

为什么阻塞状态不能直接变为执行状态???
因为计算机软件都是按照相应的程序来运行的🎿🌺_-*,因为有准备状态这么个状态🦄-_🐨🧶,所以阻塞状态要想执行必须经过准备状态🦉|-🐘🐣。其实主要原因是因为进程每次要执行的时候都需要进行一系列的准备的🐈_☺️,只有准备好后才能执行🌔🕊-——🐵。阻塞的情况分三种🏈🐐|🐭🐵:(一)😉|_🦡🥀、等待阻塞🦙🧶|😦:运行的线程执行wait()方法🎴🐤-——🐡🎄,JVM会把该线程放入等待池中🐦😠-|🤠*。wait到此结束了?🎐🦗__🌷🐖。
题目说的是进程状态的转换😗_🌻🎭,进程状态的转换没有等待态(阻塞态)运行态和就绪态-等待态(阻塞态)🐿——🦔🦉。因为进程转化为阻塞态是进程主动进行的🌎——_🎏🎍。进程转为就绪态为进程被动进行的🍄||🤑,所以可以推断没有等待态(阻塞态)运行态和就绪态-等待态(阻塞态)
进程的状态有哪些?如何切换状态?有什么细节???
首先🦢🐈——-😩,需要注意是进程控制都是通过原语来实现的🌨_💐🦐,原语是原子的🎄————*🐲,不可中断的*🦚__🌼🤗,也就是说进程在状态转换的时候是不可以被打断的🌤————🐱。为什么要用原语来实现进程控制呢?因为进程之间转换并不是那么简单的🍀🦖|🧐⚡️,是一个比较复杂的过程😞——-🐀,比如😢🏆_🦛*‍❄,进程A要从运行态转换到阻塞态🌳🐼__😡😊,需要先保存进程A在运行态的上下文🐒😘_-😩😧,也就是还有呢?
多道程序环境下不能独立运行的程序*__🐈🐄,成为一个能独立运行的基本单位😶🐘-🌜🦚,成为能与其它进程并发执行的进程🦢|😁。OS是根据PCB对并发执行的进程进行控制和管理的🐂|🕸。8.试说明进程在三个基本状态之间转换的典型原因🧿——-🦟。答🌜🌎|😵: (1)就绪状态→执行状态🙊🎣-*💀:进程分配到CPU资源(2)执行状态→就绪状态🌸🦩——_🙈💫:时间片用完(3)执行状态→阻塞状态🌚——😦:I/O请求说完了🙃💥_——🎄。
操作系统简答题 高分悬赏 加急??
处于阻塞状态的进程🦅🏓——🪀🐬,若其等待的事件已经发生⚾😀|——*🙀,于是进程由阻塞状态转变为就绪状态🏸——_🎋🐖。4🐜🦟-🎍、简要说明原子操作p(s)与v(s)的物理意义p(s)的物理意义P操作一次🦘_——🐒🦖,S值减1🦗🌖|_🎾,即S=S-1(请求分配一资源)😈——*‍❄; 如果S≥0😵🦙-|🦙*,则该进程继续执行🐹🪱__🌸*;如果S<0表示无资源😻🧿_|🙃🦌,则该进程的状态置为阻塞态🐪🏏|🐨,把相应的P是什么🌘——🌗🪡。
2🦭💮——|🐈🐐,电脑软硬件配置不当🏈|——🌔,会导致电脑的运行速度变慢🌧🌍|🐔🐷。电脑是由诸多硬件组成☺️-|🦕😓,并安装相应的软件之后才能正常工作🐂🥇——🎊☺️。如果电脑的软硬件配置不当*🍀__🎍,出现硬件方面的性能瓶颈等问题🤿🌍_-🎍,或者出现兼容性不佳等方面的软件问题🦁😒_🎊,就会影响电脑的运行状态🌹😩|-🐾🎣,导致电脑的运行速度变慢💐🦜|——🐥🐏。解决这个问题的方法🐷————🦝,就是合理配置电脑软硬件说完了🦎-😀☹️。
什么是进程 为什么??
可见😗_——🐱🎉,进程的阻塞是进程自身的一种主动行为😶🕸——|🌸。进入block过程后🏆|——🦄🀄,由于此时该进程还处于执行状态🎽-💮😣,所以应先立即停止执行🎟--🐕‍🦺🍃,把进程控制块中的现行状态由执行改为阻塞🙁😵|🏈🌍,并将PCB插入阻塞队列🪰_🏅🌘。如果系统中设置了因不同事件而阻塞的多个阻塞队列🍃_🪢😬,则应将本进程插入到具有相同事件的阻塞(等待)队列🌩-_😦🦉。最后⛅️|-🐙🪴,转调度程序进行重新调度🐵🦑|-🦟,将有帮助请点赞🦉🎳_🦣。
它会一直运行🙄|_🍁,直到有一个进程因I/O阻塞🦁🍀_🦀🎊,或者主动释放CPU,或者是CPU被另一个具有更高rt_priority的实时进程抢先🐚🐁-_😤。在Linux实现中♠——♠🤬,SCHED_FIFO进程仍然拥有时间片-只有当时间片用完时它们才被迫释放CPU😾😙_🦊🦕。因此🌒——|🥎,如同POSIX1.b一样🦉__😆🙉,这样的进程就象没有时间片(不是采用分时)一样运行😞⚡️-_🐭💫。Linux中进程仍然保持对其时间片的记录(有帮助请点赞🐊🎋--🎁。