当前位置: 首页 > news >正文

手机可以建立网站吗高校信息公开网站建设

手机可以建立网站吗,高校信息公开网站建设,山西网站建设运营公司,中国商标交易网一、上下文和并发场合 执行流#xff1a;有开始有结束总体顺序执行的一段代码 又称上下文 应用编程#xff1a;任务上下文 内核编程#xff1a; 任务上下文#xff1a;五状态 可阻塞 a. 应用进程或线程运行在用户空间 b. 应用进程或线程运行在内核空间#xff08;通过调…一、上下文和并发场合 执行流有开始有结束总体顺序执行的一段代码 又称上下文 应用编程任务上下文 内核编程 任务上下文五状态 可阻塞 a. 应用进程或线程运行在用户空间 b. 应用进程或线程运行在内核空间通过调用syscall来间接使用内核空间 c. 内核线程始终在内核空间异常上下文不可阻塞 中断上下文 竞态多任务并行执行时如果在一个时刻同时操作同一个资源会引起资源的错乱这种错乱情形被称为竞态 共享资源可能会被多个任务同时使用的资源 临界区操作共享资源的代码段 为了解决竞态需要提供一种控制机制来避免在同一时刻使用共享资源这种机制被称为并发控制机制 并发控制机制分类 原子操作类忙等待类阻塞类 通用并发控制机制的一般使用套路 /*互斥问题*/ 并发控制机制初始化为可用 P操作临界区V操作/*同步问题*/ //并发控制机制初始化为不可用 //先行方 。。。。。 V操作//后行方 P操作 。。。。。二、中断屏蔽了解 一种同步机制的辅助手段 禁止本cpu中断 使能本cpu中断 local_irq_disable(); local_irq_enable(); local_irq_save(flags); local_irq_restore(flags); 与cpu的中断位相关 local_bh_disable(); local_bh_enable(); 与中断低半部有关关闭、打开软中断 禁止中断 临界区 //临界区代码不能占用太长时间需要很快完成 打开中断 适用场合中断上下文与某任务共享资源时或多个不同优先级的中断上下文间共享资源时 三、原子变量掌握 原子变量存取不可被打断的特殊整型变量 a.设置原子量的值 void atomic_set(atomic_t *v,int i); //设置原子量的值为i atomic_t v ATOMIC_INIT(0); //定义原子变量v并初始化为0 v 10;//错误 b.获取原子量的值 atomic_read(atomic_t *v); //返回原子量的值 c.原子变量加减 void atomic_add(int i,atomic_t *v);//原子变量增加i void atomic_sub(int i,atomic_t *v);//原子变量减少i d.原子变量自增自减 void atomic_inc(atomic_t *v);//原子变量增加1 void atomic_dec(atomic_t *v);//原子变量减少1 e.操作并测试运算后结果为0则返回真否则返回假 int atomic_inc_and_test(atomic_t *v); int atomic_dec_and_test(atomic_t *v); int atomic_sub_and_test(int i,atomic_t *v); 原子位操作方法 a.设置位 void set_bit(nr, void *addr); //设置addr的第nr位为1 b.清除位 void clear_bit(nr , void *addr); //清除addr的第nr位为0 c.改变位 void change_bit(nr , void *addr); //改变addr的第nr位为1 d.测试位 void test_bit(nr , void *addr); //测试addr的第nr位是否为1 适用场合共享资源为单个整型变量的互斥场合 四、自旋锁基于忙等待的并发控制机制 a.定义自旋锁 spinlock_t lock; b.初始化自旋锁 spin_lock_init(spinlock_t *); c.获得自旋锁 spin_lock(spinlock_t *); //成功获得自旋锁立即返回否则自旋在那里直到该自旋锁的保持者释放 spin_trylock(spinlock_t *); //成功获得自旋锁立即返回真否则返回假而不是像上一个那样在原地打转” d.释放自旋锁 spin_unlock(spinlock_t *); #include linux/spinlock.h 定义spinlock_t类型的变量lock spin_lock_init(lock)后才能正常使用spinlockspin_lock(lock); 临界区 spin_unlock(lock);适用场合 异常上下文之间或异常上下文与任务上下文之间共享资源时任务上下文之间且临界区执行时间很短时互斥问题 五、信号量基于阻塞的并发控制机制 a.定义信号量 struct semaphore sem; b.初始化信号量 void sema_init(struct semaphore *sem, int val); c.获得信号量P int down(struct semaphore *sem);//深度睡眠 int down_interruptible(struct semaphore *sem);//浅度睡眠 d.释放信号量V void up(struct semaphore *sem); #include linux/semaphore.h适用场合任务上下文之间且临界区执行时间较长时的互斥或同步问题 六、互斥锁基于阻塞的互斥机制 a.初始化 struct mutex my_mutex; mutex_init(my_mutex); b.获取互斥体 void mutex_lock(struct mutex *lock); c.释放互斥体 void mutex_unlock(struct mutex *lock); 定义对应类型的变量初始化对应变量 P/加锁 临界区 V/解锁 #include linux/mutex.h适用场合任务上下文之间且临界区执行时间较长时的互斥问题 七、选择并发控制机制的原则 不允许睡眠的上下文需要采用忙等待类可以睡眠的上下文可以采用阻塞类。在异常上下文中访问的竞争资源一定采用忙等待类。临界区操作较长的应用建议采用阻塞类临界区很短的操作建议采用忙等待类。中断屏蔽仅在有与中断上下文共享资源时使用。共享资源仅是一个简单整型量时用原子变量
http://www.yutouwan.com/news/420214/

相关文章:

  • 网站资源库建设报价wordpress文章预览
  • 替人做非法网站网络规划设计师报考
  • 网站从哪些方面来做长沙部分风险区域调整
  • 庙行网站建设实验室 wordpress主题
  • 网站txt地图怎么做梧州零距离网论坛
  • 江苏建设厅网站首页做团购网站视频
  • 大同工程造价信息网seo推广主管
  • 网站编辑是做什么做网站什么主题好
  • h5免费制作网站有哪些wordpress 排版代码
  • 新动力网站建设公司环保主题静态网站模板下载
  • 使用flask做前后端分离的网站企业logo设计在线生成
  • 网站备案照相支付宝签约网站
  • 连云港市赣榆区建设局网站代理ip地址
  • 网站营销 海外阳朔到桂林汽车时刻表
  • 做网站的用处成都宅天下装饰公司怎么样
  • 公司做网站合同网页打不开qq能上
  • 什么样的网站开发比较吃香网站 被黑
  • 推荐网站建设的书360网站兼容模式
  • 网站开发php未来发展常州建站公司模板
  • 网站建设情况介绍网站建设后应该干什么
  • 企业网站开发哪家专业网络设计师证书
  • 广州的网站建设公司app开发网站排行榜
  • 怎么做一个网站哪里卖网站域名
  • 安的网络网站建设可以做软件的网站
  • 建设企业展示网站东莞人才市场档案托管
  • 新乡网站建设哪家专业建行企业手机银行下载安装
  • 东莞长安做网站公司普宁市做网站
  • 推荐购物网站建设wordpress创建配置文件
  • 网站图片用什么做建设银行跨行转账网站
  • 网站建设项目心得体会邢台视频优化排名