[Autogenerated] What happens inside the typical inter up service routine,
that handles the request for a hardware device.
So let's say we have a read, requests from disk.
Some thread starts, to read,
requests and then does other stuff or just the waits.
In the meantime, the hardware,
is doing its thing once it's done its going to raise an interrupt,
and then the inter up service routine, that is associated with without interrupt,
is going, to be called and So what would such an interrupt,
searches routine typically, do the first thing,
is to verify, that In fact, its that device,
that was interrupting.
In some cases could be a spurious interrupt.
In other cases, you might have several devices connected,
to the same hardware line connected, to the interrupt controller,
and So each interrupt, search routine, is going,
to be called in sequence, there will be an array.
So to speak of inter up service routines,
and Each one has to Verify whether it's actually the one that
needs to handle the interrupt assuming this is Indeed an
interrupt coming from this device.
It has to Tell the device.
Ok, stop interrupting.
I get it.
I'm not going to Take care of you.
Don't worry about.
That and then it's going to retrieve whatever information.
Is needed based on the request In question.
For example, if you, if it indeed, was a repo operation from a disk,
and this is a disk device, of course,
then We need to See whether the operation succeeded or not.
That information has to be retrieved by talking to the hardware using
the port whatever is available on the hardware,
the internet app service routine, of course,
is part of a driver, that has been built by the manufacturer of the device.
So it knows how to talk, to the device.
What else?
What's the next thing?
That should happen.
The next thing,
is simply to complete the request the request is based on this
data structure called an I requests back,
an I R P, that is the one that's used to represent any kind of request,
and So the kernel exposes, an API I called io complete.
Requests which is the one that should be used.
In the This particular case, just to complete the request However,
there's a SNAG which we'll see.
In the Next video.