猿来小课Linux老师总结了一下关于很多同学在观看学习Linux视频教程时一些常见问题,并作出了详细的解答,下面我们一起来看一下吧!

猿来小课解析Linux学习问题汇总:

Q1.什么是中断?什么是异常?二者有何不同?

1)中断控制是为克服对I/O接口采用程序查询控制服务方式所带来的处理器低效率而产生的,它的主要优点是只有在I/O接口需要服务时才能得到处理器的响应,而不需要处理器不断地进行查询;因此,最初的中断全部是对外部设备而言的,称为外部中断(或硬件中断);

2)异常也叫做内部中断,它是为解决机器运行时所出现的某些随机事件及编程的方便而出现的;

3)中断分为外部可屏蔽中断(INTR)和外部非屏蔽中断(NMI),所有I/O设备产生的中断请求(IRQ)均引起可屏蔽中断,而紧急事件(如硬件故障)引起的故障则产生非屏蔽中断;

4)异常又分为故障(fault)和陷阱(trap),它们的共同特点是既不使用中断控制器,又不能被屏蔽(异常其实是CPU发出的终端信号)。

Q2.什么是中断向量?Linux是如何分配中断向量的?

(1)为使处理器可以容易地识别每种中断源,将256种向量中断从0到255进行编号,即赋以一个中断类型码n,把这个8位的无符号整数叫做向量,即中断向量;

(2)Linux对256个中断向量的分配如下:

1)编号为0~31的向量对应于异常和非屏蔽中断;

2)编号为32~47的向量(即由I/O设备引起的中断)分配给可屏蔽中断;

3)剩余的、编号为48~255的向量用来标识软中断;Linux只用其中的一个(即128或0x80向量)来实现系统调用。

Q3.什么是中断描述符表?什么是门描述符?

1)在实地址模式下,CPU将内存中从0开始的1KB空间作为一个中断向量表,表中每个表项占4个字节;但在保护模式,由4个字节的表项构成的中断向量表满足不了要求;因此在保护模式下,中断向量表中的表项由8个字节组成,中断向量表也改称为中断描述符表(IDT);

2)IDT中的每个表项叫做一个门描述符(gatedescriptor)。

Q4.门描述符有哪些类型?它们有什么不同?

门描述符中类型码占3位,表示门描述符的类型,主要分为以下几类:

1)中断门(interruptgate):其类型码为110,包含了一个中断或异常处理程序所在段的选择符和段内偏移量;

2)陷阱门(trapgate):其类型码为111;

3)系统门(systemgate):是Linux内核特别设置的,用来让用户态的进程访问陷阱门。

Q5.什么是系统调用?为什么要引入系统调用?

(1)操作系统为用户态的进程与硬件设备(如CPU、磁盘和打印机等)之间的交互提供了一组接口,这些接口使得程序更具有可移植性,因为不同的操作系统只要所提供的一组接口相同,那么在这些操作系统之上就可以正确地编译和执行相同的程序,这组接口就是所谓的“系统调用”;

(2)引入系统调用的原因有:

1)这使得编程更加容易;

2)这极大地提高了系统的安全性;

3)最重要的一点,这些接口使得操作系统更具有可移植性。

以上就是关于猿来小课Linux老师汇总的一些常见问题介绍,在读完本文之后,要了解更多关于Linux发展前景趋势,请关注猿来小课官网Linux视频,猿来小课是职业在线学习教育平台,为同学们提供权威的Linux视频教程系统,让你快速掌握Linux从入门到精通开发实战技能。

【猿来小课】解析Linux学习问题汇总相关推荐

  1. 猿来小课Linux教程分享Shell脚本问题大全

    本篇文章猿来小课Linux老师给小伙伴们整理了一些Shell脚本问题,对Shell脚本问题有不清楚或者不明白的小伙伴就随猿来来了解一下吧. 猿来小课Linux教程分享Shell脚本问题大全: 1.&a ...

  2. 猿来小课web前端介绍html语言基础学习

    HTML是一种超文本标记语言,属于互联网开发技术里面的前端开发技术.同时也是计算机和你所访问的Web站点的沟通语言.当你访问Web服务器所寄存的站点并与其交互时,Web服务器会接收到来自你的浏览器的请 ...

  3. 猿来小课Python视频老师简述让程序员崩溃的瞬间

    作为一个资深的程序猿,我日常的任务就是和代码无数次交锋,在公司敲代码时不知道你们有没有遇到过让你崩溃的瞬间呢?本篇文章猿来小课Python视频老师就收集整理了一些让程序员崩溃的瞬间,让我们下面一起来对 ...

  4. 猿来小课Java视频教程讲师浅谈JAVA体系结构

    猿来小课Java视频教程讲师:Java体系结构中不仅定义了Java的开发编译环境,也定义了Java的运行环境.为运行Java应用程序和applet,计算机上应安装JVM和Java运行时解释器,这两个部 ...

  5. [猿来小课]Python开发入门第三讲:Python的安装

    今天猿来小课的老师给想要学习python开发语言的同学们讲一讲Python的安装,手把手带着大家完成学习python开发第一步.有条件的小伙伴跟着我一起来实战操作吧. 猿来Python开发入门第三讲: ...

  6. Linux学习资源汇总

    Linux学习资源汇总: <Linux就该这么学> Linux中国开源社区 linux&unix程序开发基础教程 ---读书笔记 linux内核编程 Linux学习教程 鸟哥的Li ...

  7. linux软件包管理解析,linux学习笔记_09_软件包管理解析.doc

    linux学习笔记_09_软件包管理解析 软件包管理 软件包分类 源码包(C语言编写的源代码) linux主要由C语言来写. 源码包可以用写字板打开 脚本安装包:源码包进行再开发的源码包(提供安装界面 ...

  8. python熊猫小课_Python-机器学习小项目

    学习机器学习相关技术的最好方式就是先自己设计和完成一些小项目. Python 是一种非常流行和强大的解释性编程语言.不像 R 语言,Python 是个很完整的语言和平台,你既可以用来做研发,也可以用来 ...

  9. 20155224聂小益的Linux学习

    20155224聂小益的虚拟机安装 虚拟机安装 一开始,我在下载VirtulBox及Ubuntu遇到了一些困难,老实说点进去看到一大堆英文界面的时候真的是有点吓到.不过几秒钟之后就发现这并没有什么哈哈 ...

最新文章

  1. 银行启动开放战略,能否赢回金融科技下半场?
  2. Android的全屏活动?
  3. 10投屏后没有声音_钉钉怎么投屏,秒懂投屏详解
  4. adpater里写toast_如何在Android中显示Toast?
  5. 眨眼检测计算机不精确,基于OpenCV和Python错误的眨眼检测
  6. 删除Terminating状态的Pod
  7. 【深度优先搜索】20行代码解决8皇后问题
  8. PS导出字幕的一些细节
  9. 中兴java笔试题_中兴Java开发笔试题目及答案(7)
  10. 【Excel文件合并工具】
  11. linux du查看目录大小,linux du命令查看文件目录大小
  12. SRC挖掘---web开放重定向漏洞-2day
  13. ubuntu20.04 更新后蓝牙机械键盘不可用
  14. 《深入浅出4G网络 LTE_EPC》阅读笔记一
  15. Ubuntu 20.04 安装deepin-wine
  16. 线程(Thread)的学习笔记
  17. 4.9抽奖 | 实验室攻防平台邀请码
  18. 《日落苍狼》读后感及摘录
  19. 服务器概念、组成和架构详解
  20. python打印输出五角星

热门文章

  1. 成都旅游住宿购物交通攻略617
  2. [一个程序员的人文素养系列]这世界如露水般短暂俳句摘抄
  3. pwscf与wannier90 Hands-On实战训练(一)——费米面计算为例
  4. 雅虎地图与谷歌地图坐标_为什么Google会击败Yahoo! 在网络托管大战中
  5. python控制安卓手机的闹钟_【玩转Python】为女朋友打造一款智能语音闹钟
  6. 包裹细胞膜的磁性纳米微载体/负载斑蝥素的巨噬细胞膜包封金属有机框架纳米颗粒的研究
  7. Python中各种下划线使用总结和实例详解
  8. LintCode刷题(入门篇)
  9. 题解:《不高兴的津津》(原版、升级版)
  10. Guitar Pro8优秀的自动扒谱软件