千锋教育-做有情怀、有良心、有品质的IT职业教育机构

位置:首页 > 行业动态

参加广州Linux培训学习?看看千锋内部的Linux答疑吧

时间:2018-04-13 10:56:22  |  来源:广州千锋  |  作者:广州千锋

  经常有朋友问类似于“Linux好学吗”这样的问题,千锋教育想来不喜欢用广告来说事儿,所以,不如我们一起看看千锋广州linux培训班的内部答疑质量如何。
 
33.jpg
 
  内核中的同步
 
  Q1.什么是临界区?什么是竞争状态?什么是同步?
 
  A:
 
  1)临界区(critical regions)就是访问和操作共享数据的代码段,多个内核任务并发访问同一个资源通常是不安全的;
 
  2)如果两个内核任务可能处于同一个临界区,就是一种错误现象;如果确实发生了这种情况,就称它为竞争状态;
 
  3)避免并发和防止竞争状态称为同步(synchronization)。
 
  Q2.简要介绍一下死锁及避免死锁的方法。
 
  A:
 
  死锁包括自死锁和ABBA死锁,
 
  1)产生死锁有四个原因:互斥使用、不可抢占、请求和保持,以及循环等待;
 
  2)避免死锁的方法有:破坏“不可剥夺”条件、破坏“请求和保持”条件、破坏“循环等待”条件。
 
  Q3.内核中造成并发执行的原因是什么?
 
  A:
 
  “并发”分为“伪并发”和“真并发”两种,内核中造成并发执行的原因有以下几种:
 
  1)中断:它可能随时打断当前正在执行的代码;
 
  2)内核抢占:内核中的任务可能会被另一个任务抢占;
 
  3)睡眠及其与用户空间的同步:在内核执行的进程可能会睡眠,这就会唤醒调度程序,调度一个新的用户进程执行;
 
  4)对称多处理:两个或多个处理器可以同时执行代码。
 
  Q4.给出信号量的定义,并说明down()和up()的含义。
 
  A:
 
  1)Linux中的信号量是一种睡眠锁,它是1968年由Dijkstra提出的,如果一个任务试图获得一个已被持有的信号量,信号量会将其推入等待队列,然后让其睡眠;当持有信号量的进程将信号量释放后,在等待队列中的一个任务将被唤醒,从而可以获得这个信号量;
 
  2)信号量支持两个原子操作P()和V(),前者叫做测试操作,后者叫做增加操作;后来的系统把这两种操作分别叫做down()和up();
 
  3)down()操作通过对信号量计数减1来请求获得一个信号量;up()操作用来释放信号量,该操作也被称作“提升”(upping)信号量,因为它会增加信号量的计数值。
 
44.jpg
 
  千锋广州Linux培训课程,面向大学计算专业的学生、大学非计算专业的学生、现从事网络工程方面工作的人员、现从事软件开发方面工作的人员、现从事基础运维工作的人员、现从事非IT类工作的小白、向往IT行业的人群等,全部学习下来,学员可以成为经验丰富的linux开发工程师。千锋有的linux视频教程帮助学员快速学习。

上一篇:参加广州Java培训班学习,要注意这几点
下一篇:返回列表

新开班New

  • 广州地址:广州市天河区元岗路310号智汇park创意园E座5层
    咨询电话:020-22119207 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 北京天丰利校区:北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术广场服务楼2层、南区服务楼2层
    咨询电话:400-654-7778 010-82790226-801
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训、好程序员特训营
  • 深圳西部硅谷校区:深圳市宝安区宝安大道5010号西部硅谷B座A605-619
    深圳科技园校区:广东省深圳市南山区高新技术产业园R3栋B5楼
    深圳大学城校区:深圳市南山区留仙大道1201号大学城创客小镇16栋2楼、3楼
    咨询电话:0755-86681178/9-801
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训、PHP培训、JavaEE培训、好程序员特训营
  • 上海地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-627-7899 021-65025129-602
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训、好程序员特训营
  • 郑州地址:郑州市金水区纬五路21号河南教育综合楼(经纬中学楼)6/7/8层
    咨询电话:0371-55911950 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 大连地址:大连市高新园区软件园路2号B8座
    咨询电话:0411-39026086 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 武汉地址:武汉市东新区光谷大道77号金融港B26栋9楼
    咨询电话:027-59905902 027-59905908 027-59905909
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 成都旅游校区:成都市一环路西二段17号四川旅游青羊校区内
    成都华立校区:成都一环路西二段17号华立大厦3楼
    咨询电话:028-83178771 028-61967740
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 西安地址:西安市二环南路西段60号永安大厦4层
    西安科技园校区:西安市雁塔区高新六路52号立人科技园C座西区4层
    咨询电话:029-85260160 029-85261030 029-85260960
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 杭州地址:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:0571-86893632 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训
  • 青岛校区地址:青岛市市南区金坛路17号青岛职业技术南校区实训楼A4层
    咨询电话:0532-80910752/3 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 了解千锋动态
    关注千锋教育服务号

  • 扫码匿名提建议
    直达CEO信箱