> Is it performs a full stop of kernel (except some life-parts of course) ?
No, it acquires a global lock so that only one processor can execute
the code between kernel_lock and kernel_unlock.
Quote:>What parts are still working ? What can I do (call, implement) and what I
>can't between lock and unlock ?
Interrupts are still enabled, so you cannot assume that some given code
won't be interrupted. You must still guard data that is shared with
interrupt service routines.
Quote:>By the way I want to prevent process memory access from anyone but my kernel
>process, is a lock_kernel helps ?
No; for locking your fine grained-data structures, you should use individual
spinlocks. These also work for mutual exclusion against interrupts. A global
kernel lock is something you should avoid introducing at all costs.