Question - What are the benefits and losses of placing the functionality in a device controller rather than in placing it in the kernel?
Answer -
The benefits of placing functionality in the device controller are:
- System crasher due to the occurrence of a bug is greatly reduced.
- By the utilization of dedicated hardware and algorithms that are hard coded the performance can be improved greatly.
- Since the algorithms are hard coded the kernel gets simplified.
The banes of placing functionality in the controller rather than the kernel are:
- Once a bug occurs they are difficult to fix, a new firmware or revision may be required.
- For performance improvement of algorithms hardware upgrades are required rather than a device driver update.