-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2020-03-21 a las 09:41 +0100, Per Jessen escribió:
Carlos E. R. wrote:
> A user process can enter kernel mode - this one did, and then > disabled interrupts. I.e. it has to complete.
Disabled interrupts? But all the processes were working, only this one was stuck. My training said that when interrupts were disabled, noone got access to them.
I don't understand a word of that ?
When one process blocks interrupts, my teachers told me it applied to the entire computer, all processes. Nothing, not even the kernel, can intervene. The keyboard gets blocked, the clock interrupts gets blocked.
Interrupts are blocked per process. Very basic example: I might have a daemon I want to ignore Ctrl-C (SIGINT), so I block it. Does not mean any other process should also ignore it.
That's totally news to me. :-o But control c is signal issued by the kernel, not a hardware interrupt that some code has to handle, in order to read the hardware keyboard interface. I'm talking of things like INT 01, INT 02, etc. Some hardware puts a high voltage on a line, and the CPU halts completely and jumps to a predefined address. Hardware.
It is impossible to block interrupts for minutes
It is entirely possible to block interrupts for minutes.
And then the entire kernel goes kaput. - -- Cheers Carlos E. R. (from openSUSE 15.1 (Legolas)) -----BEGIN PGP SIGNATURE----- iHoEARECADoWIQQZEb51mJKK1KpcU/W1MxgcbY1H1QUCXnYMzRwccm9iaW4ubGlz dGFzQHRlbGVmb25pY2EubmV0AAoJELUzGBxtjUfVbaYAn2iQp9wO5XSNQZ9t331M 7nx/ShOtAKCPZmc67pJOTM3PoVLm+PXURFfoyg== =zHJ5 -----END PGP SIGNATURE-----