3 ms·
What about some abstraction/interfacing layer/driver that would take care of exposing some kernel functionality an average driver needs and provide additional v
by margorczynski 9y ago
What about some abstraction/interfacing layer/driver that would take care of exposing some kernel functionality an average driver needs and provide additional validation?
- zaarn 9y agoDrivers need to do things that are inherently unsafe. The driver responsible for you harddrive needs to instruct the SATA controller to copy a piece of data from disk to a specified memory location. The kernel has no understanding of the process without the driver and is therefore incapable of preventing abuse. You can somewhat prevent this using various methods but those cost performance. And keep in mind the abstraction itself already costs performance and this doesn't even allow easy extending of the abstraction if necessary. While microkernels that do run everything in userspace are nice in theory, you usually pay in CPU cycles compared to kernel-mode drivers.