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

网站建设合同违约责任网易企业邮箱收费和免费什么区别

网站建设合同违约责任,网易企业邮箱收费和免费什么区别,北京海淀区房价2022最新价格,如何开发微信公众平台一、上下文和并发场合 执行流#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.dnsts.com.cn/news/67351.html

相关文章:

  • 排名好的成都网站建设wordpress动漫网站模板
  • 企业服务类网站广州做app公司有哪些
  • 定兴网站建设公司网页设计素材分析
  • 做网站是怎么回事公司做网站有意义么
  • phpcms 恢复网站花生壳软件做的网站
  • 个性化网站成功的案例oa办公系统官网
  • 南康区建设局网站网络营销专业技能
  • 最好的营销网站金华网站开发建设
  • 网站建设为啥每年都要收费wordpress下线提成插件
  • 迈诺网站建设扫描网站漏洞的软件
  • 临沂网站服务器价格深圳专业商城网站设计
  • 舟山建设网站六安城市网地址在哪里
  • 开源saas建站系统如何建网站平台
  • 北京做网站哪家好网站源码调试
  • 网站建设都需要买什么东西wordpress 坏图片
  • 汽车用品东莞网站建设企业服务网站建设
  • 山西省建设厅入晋备案网站学畅留学招聘网站开发主管
  • 盐城网站开发怎么样网站浏览历史记录恢复方法是什么
  • 企业网站建设费用入哪个科目建筑工地老板直招工人
  • 深圳 网站开发网络营销和市场营销的区别
  • 东莞市公司网站建设用dw做的网站怎么发布
  • 长沙企业建站方案上海公共服务平台官网
  • 网站内链怎么做wordpress主题如何更换
  • 电脑网站建设404wordpress
  • 文本编辑器 网站成都平面设计公司
  • 建设信用卡银行商城网站网站二级目录做优化
  • 设计网站官网狗中国纪检监察报社级别
  • 青岛模板做网站计算机前端和后端哪个好就业
  • 湖南3合1网站建设WordPress多级目录多种样式
  • 惠州+网站建设公司电脑初级入门课程自学网课