陷阱(trap)和打断(interrupt)的区别

trap和interrupt之间的主要区别是,trap由用户程序触发,以调用OS功能,而中断由硬件设备触发,以允许处理器执行相应的中断处理程序例程。...

trap和interrupt之间的主要区别是,trap由用户程序触发,以调用OS功能,而中断由硬件设备触发,以允许处理器执行相应的中断处理程序例程。

操作系统是事件驱动的。在执行程序时,事件可能会突然发生。它将触发操作系统执行。这会将用户模式更改为内核模式。在操作系统执行之后,控制被传递回原始程序。陷阱和中断是两种类型的事件。陷阱由用户程序引发,而中断由键盘、定时器等硬件设备引发。陷阱将控制传递给陷阱处理程序,中断将控制传递给中断处理程序。执行处理程序后,控件将切换回原始程序。

覆盖的关键领域

1.什么是陷阱–定义,功能2.什么是中断–定义,功能3.陷阱和中断之间的关系–关联概述4.陷阱和中断之间的区别–关键区别的比较

关键术语

中断、操作系统、陷阱

陷阱(trap)和打断(interrupt)的区别

什么是陷阱(trap)?

陷阱由用户程序引发以调用操作系统的功能。假设用户程序需要在屏幕上打印一些东西。它将调用一个陷阱,操作系统将执行将数据写入屏幕的操作。陷阱主要用于实现系统调用。

Difference Between Trap and Interrupt

Figure 1: Types of Events

下面是一个例子。假设有一个printf语句(“%s\n”,str);它将调用write函数将输出打印到标准输出,即监视器。这将调用一个陷阱,并将控制传递给陷阱处理程序。然后,用户模式变为内核模式,操作系统执行写调用。完成任务后,控件从内核模式转移回用户模式。

什么是打断(interrupt)?

硬件设备引发中断。USB设备、网卡、键盘都可能导致中断。中断是异步的。因此,它们随时都可能发生。

处理器有一个称为中断引脚的专用引脚。它也被称为INT pin。诸如键盘之类的设备通过中断引脚连接到处理器。当按下一个键时,它会产生一个中断。处理器将从当前运行的进程切换到中断处理程序例程。在这种情况下,将调用键盘中断处理程序例程。完成中断处理程序例程后,处理器将切换回正在运行的原始程序。基本上,当中断发生时,处理器切换上下文并执行中断处理程序。完成后,它将切换回以前的状态。

处理器只有一个中断引脚,但有多个硬件设备。中断控制器有助于在多个插脚之间共享单个中断插脚。处理器将与中断控制器通信,以确定哪个设备实际产生了中断。根据这一点,处理器将执行相应的中断处理程序例程。它可以是计时器、USB或键盘中断处理程序例程。

除了陷阱和中断之外,还有另一种类型的事件称为异常。它们由处理器自动生成。异常进一步分为故障和中止。故障是可恢复的错误,而中止是难以处理的错误。

陷阱与中断的关系

  • 陷阱和中断是事件的类型。

陷阱(trap)和打断(interrupt)的区别

定义

The trap is a signal raised from a user program that indicates the operating system to perform on some functionality immediately while 中断是硬件向处理器发出的信号,表示需要立即注意的事件。

生成方法

陷阱由用户程序中的指令生成,而中断由硬件设备生成。

主要功能

此外,陷阱调用OS功能。它将控件传输到陷阱处理程序。中断触发处理器执行相应的中断处理程序例程。

发生

此外,陷阱是同步的,并且可以在执行任何指令之后到达,而中断是异步的,并且可以在执行任何指令时发生。

同义词

陷阱也称为软件中断,而中断也称为硬件中断。

结论

陷阱和中断是两种类型的事件。陷阱和中断的区别在于,陷阱由用户程序触发以调用操作系统功能,而中断由硬件设备触发以允许处理器执行相应的中断处理程序例程。

引用

1.操作系统#14什么是中断?中断类型,Xoviabcs,2017年8月31日,可在此处获得。2。操作系统#16软件中断| xv6中的系统调用,Xoviabcs,2017年9月1日,此处提供。 2.操作系统#16软件中断| xv6中的系统调用,Xoviabcs,2017年9月1日,

  • 发表于 2021-06-30 21:37
  • 阅读 ( 931 )
  • 分类:IT

你可能感兴趣的文章

飞碟(skeet)和陷阱(trap)的区别

...靶射击是一项射击运动,分为以下几类: 双向飞碟射击 陷阱射击 运动射击 尽管这项运动有许多学科,但这三个学科是它的主要支柱。本文将主要讨论双向飞碟和陷阱射击。 什么是双向飞碟和陷阱射击(skeet and trap shooting)? 粘...

  • 发布于 2021-06-25 02:35
  • 阅读 ( 545 )

轮询(polling)和打断(interrupt)的区别

...上的所有设备来查找发送该请求的设备。 什么是打断(interrupt)? 在程序执行过程中,微处理器可以通过特殊的IRQ线接收中断信号。中断通常是通过调用相应的系统子例程进行中断处理来执行的,这些子例程被称为BIOS或DOS中断...

  • 发布于 2021-06-25 09:09
  • 阅读 ( 563 )

dubstep音乐(dubstep music)和陷阱音乐(trap music)的区别

是单步曲还是陷阱曲? Dubstep和trap是两种来自不同传统的电子舞蹈音乐流派,但它们有着相同和不同之处。Dubstep被视为一种相对较新的舞曲类型,源于伦敦多民族的年轻亚文化。使dubstep与众不同的一件事是几乎所有作品中都有...

  • 发布于 2021-06-26 06:30
  • 阅读 ( 459 )

信号(signal)和打断(interrupt)的区别

...信号中,对发生的特定动作没有直接响应。 什么是打断(interrupt)? 中断是由CPU以外的组件在外部发生的事件。它通知CPU某种外部事件。诸如联网设备的IO设备可以发送中断来指示所接收的数据分组。此外,计时器可以向CPU通知超...

  • 发布于 2021-07-01 09:16
  • 阅读 ( 715 )

硬件(hardware)和软件中断(software interrupt)的区别

...中断,不可屏蔽中断,软件中断 什么是硬件中断(hardware interrupt)? 硬件设备产生硬件中断。硬盘可以产生一个硬件中断来通知它已经读取了一系列的数据块。网络设备可以创建一个硬件中断来指示它接收到了数据包。此外,输...

  • 发布于 2021-07-01 12:07
  • 阅读 ( 455 )

系统调用(system call)和打断(interrupt)的区别

...及请求访问硬件设备时,会发生系统调用。 什么是打断(interrupt)? 中断是通知CPU立即采取行动的事件。它是由CPU以外的组件引起的。最新的计算机会立即响应中断。此外,有两种类型的中断:硬件中断和软件中断。 硬件设备产...

  • 发布于 2021-07-01 18:24
  • 阅读 ( 507 )

蒙面的(maskable)和非屏蔽中断(non maskable interrupt)的区别

...,可屏蔽中断,不可屏蔽中断 什么是可屏蔽中断(maskable interrupt)? 可屏蔽中断是处理器可以拒绝的中断。因此,这些中断有助于管理低优先级任务。此外,8085的RST6.5、RST7.5和RST5.5是可屏蔽中断的一些常见示例。 什么是非屏蔽...

  • 发布于 2021-07-01 22:17
  • 阅读 ( 856 )

打断(interrupt)和轮询(polling)的区别

...屏蔽中断,不可屏蔽中断,轮询,软件中断 什么是打断(interrupt)? 中断是指示CPU立即采取行动的事件。可以有一个中断来指示计时器超时。另外,中断可以通知联网设备的所接收的数据分组。当中断发生时,CPU暂停当前正在执...

  • 发布于 2021-07-01 22:30
  • 阅读 ( 1913 )

飞碟(skeet)和陷阱(trap)的区别

...击就是这样一项运动。射击运动有三种类型:双向飞碟,陷阱和运动泥。虽然这两项运动可能看起来相似,因为它们包括从不同位置射击目标,但了解它们的区别是很重要的。飞碟(skeet) vs. 陷阱(trap)双向飞碟和陷阱的区别在于,...

  • 发布于 2021-07-10 04:21
  • 阅读 ( 183 )

dubstep音乐(dubstep music)和陷阱音乐(trap music)的区别

...,它们是Dubstep音乐和Trap音乐。dubstep音乐(dubstep music) vs. 陷阱音乐(trap music)dubstep音乐和trap音乐的区别在于dubstep音乐更电子化,每分钟的节拍(BPM)更高,比如138到142,而trap音乐更注重节奏和低音,节奏从100到176 BPM不等。此外...

  • 发布于 2021-07-10 04:40
  • 阅读 ( 271 )
rfs48278
rfs48278

0 篇文章