Defining The Linux Kernel And Its Usage
by: faye_bautista
status: Full Member
Total views: 5
Word Count: 504
As the core of the operating system, the kernel has access to certain services that interact with the systems hardware which no other program has direct access to. If a program wants to carry out a special task, then it must go though the kernel first.
When a program wants to run, write data to a disk, write to certain parts of memory, it asks the kernel for permission first. The kernel considers the program's request and proceeds to do a number of tasks for that program. The kernel is very strict and will not let programs away with illegal operations. If a program goes against what the kernel says, it must be punished for its actions.
If a program that got the "ok" from the kernel and then decides to write some data to memory outside it's designated block(s), the kernel will kill that program and do a core dump. A "core dump" is an operation the kernel carries out when a program tries to perform a task it is not allowed to do. The kernel dumps the address space in memory the program was using to the hard drive before the kernel kills that program.
The paradigm of a strict kernel is not new; the idea has been around for a while. It's a great idea, and i think has been implemented very well on a Linux OS. The majority of the kernel was written in C with partial implementations written in assembly language which makes it flexible and very fast.
Here's a Little Conversation with the Kernel
(program app) Hello Mr. Kernel, I was wondering if I could have some memory to run and play in?
(kernel) Hmm... Ok, but if you try to run outside the memory space allocate for you then I am going to stop you!
(program app) Ok then, it's a deal.
(kernel) Hey! I never gave you permission to write data in that memory segment, you will pay!
(program app) Oh no?? I didn't mean it.. I.. I.. AHHHH.... ***Dead*** ( core dump ).
(kernel) Ask me next time you want to do something like that!
(kernel) When will those programs ever listen?!
Usually the operation of killing a program that was "bad" does not bring down or crash the whole Linux operating system, it just kills the program or process that has stepped out side it's "play ground" the kernel initially allocated for it. After a core dump the kernel just goes about its business of answering requests from other processes on the system.
When a core dump occurs it is possible in some cases to start up the program that caused the core dump to where it left off just before the dump.
BlueWaterArticles.com: - Defining The Linux Kernel And Its Usage
About the Author
The author writes about Linux Photoshop and blogs at http://www.hackitlinux.com/.
*You may use the contents of the above article on any site so long as you adhere to our Terms Of Service and include a link back to our site as follows
Rating: Not yet rated
