zoukankan      html  css  js  c++  java
  • 临界区

    临界区

    定义

    访问临界资源的代码区被成为临界区,每次进允许一个执行块进入临界区。比如一个线程进入了临界区然后因为系统调度而被打断,但此时他还是在临界区中的,所以此时其他执行线程还是不被允许进入临界区---即执行访问共享资源的代码


    分类


    数据临界

    特定的共享数据区在一次访问过程中,不允许其他的不受控制访问发生的。比如修改一个共享数据的时候此时不能允许其他的代码来同时访问(读和写有时候不一定都不被允许,和具体的业务需求相关)。又比如对一个文件的写入过程不能被其他写入操作穿插执行,此时就会出现了实际写入的内容和期望不符合。此时的共享数据就是临界资源


    代码临界

    特定的临界代码不允许被打断,比如不支持中断抢占硬件平台下的硬件中断服务程序的执行过程,这种情况不多见但也是临界区的一种。还有一种情况就是在一些操作硬件的过程中有时候会需要符合硬件规定的操作序列进行一定的处理且中间不允许有其他的操作穿插,此时这个过程就是临界的因为如果中间产生了中断或系统调度导致操作序列中间被插入其他的操作就会导致硬件判断操作序列非法进而无法正常使硬件正常初始化。

  • 相关阅读:
    C# 获取电脑SN号
    Windows 使用ffmpeg将MP4视频转换为m3u8格式
    C# 创建或打开TXT文件并逐行写入
    Dictionary通过下标获取key和value
    Winfrom 连接考勤机设备时界面假死
    Win 10操作系统快捷键
    SQL Server 2008 在表中插入新的字段
    什么是CSR
    Sql Server中的事务隔离级别
    Web验证方式(4)--JWT
  • 原文地址:https://www.cnblogs.com/w-smile/p/14317736.html
Copyright © 2011-2022 走看看