[Gllug] Unkillable process
t.clarke
tim at seacon.co.uk
Fri Jun 28 09:39:59 UTC 2002
-------------------------------------------
Message from:-
Tim Clarke (tim at seacon.co.uk)
Seacon Group Ltd / Seacon Terminals Ltd,
Tower Wharf, Northfleet, Kent, DA11 9BD, UK
Telephone: +44 (0)1474 320000
Fax: +44 (0)1474 329946
-------------------------------------------
Nix wrote:-
>
>On Wed, 26 Jun 2002, t. clarke muttered drunkenly:
>> This has long struck me as a failing of Unix/linux kernels - the inability
>> to kill processes in certain states. Maybe someone involved in kernel
>> development should look at ways of killing processes from within the kernel
>> by means of a system-call, rather than sending the process a signal ?
>
>The problem is, what happens if that process has kernel locks held?
>Normally things are in uninterruptible sleep for precisely that reason,
>and they've normally got locks held because they're doing things to
>kernel data structures that other processes would be deeply confused by
>(i.e., because they're enforcing atomiticity).
>
>So to safely kill a D-state process you'd need to snap its locks and
>roll back all the changes to data structures it had made: that is, you'd
>need a transaction management layer deep inside the kernel which all the
>device drivers use.
>
>Think of the performance hit. :(
I was perfectly sober at the time ! - but maybe showing my ignorance.
Why would any sane operating system want to allow user processes to modify
kernel structures? I though the general idea of robust multi-user OS's was
to protect the kernel from users and users from each other !! I have obviously
missed something, 'cos I though that generally speaking programs just executed
code and did system calls, leaving the kernel code to do whatever was requested.
Does an 'uninterruptable sleep' imply that a process has asked the kernel to
do something which for some reason it (the kernel) can't complete ??
Tim
--
Gllug mailing list - Gllug at linux.co.uk
http://list.ftech.net/mailman/listinfo/gllug
More information about the GLLUG
mailing list