linux - uclinux and necessity for device drivers -


normally mmu-less systems don't have mpu (memory protection unit) well, there's no distinction between user & kernel modes. in such case, assuming have mmu-less system piece of hardware mapped in cpu address space, make sense have device drivers in kernel, if hardware resources can accessed userspace?

does kernel code have more control on memory, usercode?

yes, on platforms without mmus host uclinux makes sense if had normal embedded linux environment. cleaner design have user applications , services go through normal interfaces (syscalls, etc.) , have os route kernel requests through device drivers, file systems, network stack, etc.

although kernel not have more control on hardware in these circumstances, actual hardware should touched system software running in kernel. not limiting access hardware make debugging things system resets , memory corruption virtually impossible. practice makes design more portable.

exceptions may user mode debugging binaries used in-house platform bring-up , diagnostics.


Comments

Popular posts from this blog

authentication - Mongodb revoke acccess to connect test database -

r - Update two sets of radiobuttons reactively - shiny -

ios - Realm over CoreData should I use NSFetchedResultController or a Dictionary? -