Dynamically loadable kernel modules, Operating System

Assignment Help:

Q. Dynamically loadable kernel modules give elasticity when drivers are added to a system however do they have disadvantages too? Under what situations would a kernel be compiled into a single binary file and when would it be better to keep it split into modules? Describe your answer.

Answer: There are two principal disadvantages with the use of modules.

The initial one is size- a module management consumes un-page-able kernel memory as well as a basic kernel with a number of modules loaded will consume more memory than an equivalent kernel with the drivers compiled into the kernel image itself. This can be a extremely significant issue on machines with limited physical memory.

The second disadvantage is that modules can increase the complexity of the kernel bootstrap process. It is hard to load-up a set of modules as of disk if the driver needed to access that disk itself a module that needs to be loaded. Consequently managing the kernel bootstrap with modules can require extra work on the part of the administrator the modules necessary to bootstrap require to be placed into a ram disk image that is loaded alongside the early kernel image when the system is initialized.

In certain cases it is better to utilize a modular kernel as well as in other cases it is better to utilize a kernel with its device drivers pre-linked. Where reducing the size of the kernel is important the choice will depend on how frequently the various device drivers are used. If they are in constant utilize then modules are unsuitable. This is particularly true where drivers are needed for the boot process itself. On the other way if some drivers aren't always needed then the module mechanism allows those drivers to be loaded and unloaded on demand potentially offering a net saving in physical memory.

Where a kernel is to be built that should be usable on a large variety of awfully different machines then building it with modules is clearly preferable to using a single kernel with dozens of unnecessary drivers consuming memory. This is principally the case for commercially distributed kernels where supporting the widest diversity of hardware in the simplestmanner possible are a priority.

Nevertheless if a kernel is being built for a single machine whose configuration is known in move forwards then compiling and using modules may merely be an unnecessary complexity. In cases similar to this the use of modules may well be a matter of taste.


Related Discussions:- Dynamically loadable kernel modules

Explain about threading issues, Explain about threading issues? The for...

Explain about threading issues? The fork and exec system calls In a multithreaded program of few UNIX systems have chosen to have two versions of fork, one that duplicates e

Deadlock involving only one single process, Is it probable to have a deadlo...

Is it probable to have a deadlock involving only one single process? Describe your answer. Answer: No This pursue directly from the hold-and-wait condition.

Convert the hex to binary, Convert the following from hex to binary and dra...

Convert the following from hex to binary and draw it on the memory map.     RAM    = 0000 -> 00FF     EPROM = FF00  -> FFFF Answer:   0000  0000 0000  0000 (0)    RAM sta

Show the services which provided by operating system, Q. Show the services ...

Q. Show the services which provided by operating system? A) Resource Allocation: If there are more than one user or jobs running at the same instance then resource

Explain the spawnvp function used in the netware, Explain the Spawnvp Funct...

Explain the Spawnvp Function used in the netware Spawnvp(flags, execNmae, argv)   This function executes  similarly to spawnlp( ) except that parameters are passed as a v

Fibonacci sequence, #questionThe Fibonacci sequence is the series of number...

#questionThe Fibonacci sequence is the series of numbers 0,1,1,2,3,5,8,… Formally, it can be expressed as: fib0 = 0 fib1 = 1 fibn = fib n-1 + fib n-2 Write a C program u

Explain many-to-one model (green threads), Many-to-One Model (Green Threads...

Many-to-One Model (Green Threads) Implementations of the many-to-one model a lot of user threads to one kernel thread permit the application to create any number of threads tha

What is a general graph, What is a general graph? A tree structure wher...

What is a general graph? A tree structure where links can go from one branch to a node earlier in the similar branch or other branch, allowing cycles.

Unix process api, Unix process API The two most important function calls...

Unix process API The two most important function calls to use when programming with several processes are fork and exec:  fork() creates a copy of current process. It gives

What kind of operating system is windows xp, Q.  What kind of operating sy...

Q.  What kind of operating system is Windows XP? Describe two of its major features. Answer: A 32 or 64 bit pre-emptive multitasking operating system supporting multiple use

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd