3 ms·
Ok fair enough, Linux can't run normally without an MMU. It kind of defeats the purpose of using a UNIX, but yes, you get all the Linux drivers and the UNIX API
by guerrilla 4y ago
Ok fair enough, Linux can't run normally without an MMU. It kind of defeats the purpose of using a UNIX, but yes, you get all the Linux drivers and the UNIX API for free.
- monocasa 4y agoYou still have processes and mutual protection between them and the kernel with no-MMU, they just get less options about where they can mmap(2) and you have to vfork(2) instead of fork(2). Otherwise it feels like a pretty standard Linux.
- joezydeco 4y agoApplications built with dynamic libraries are a pain in the ass with ucLinux.
- monocasa 4y agoIt is an archs without position independent code. As long as you have FDPIC, it's fairly painless.
- jesprenj 4y agoWhat about interprocess protection? Do permissions make sense on nommu, can a process edit another's RAM?
- monocasa 4y agoYes, processes are protected from eachother.
- guerrilla 4y agoHow is that possible without page fault exceptions or equivalent?
- monocasa 4y agoThe MPU gives you an equivalent of page fault exceptions. You can't remap virtual addresses to physical, but you can change their permissions, trap into the kernel when those permissions are violated, and restart execution of processes after the trap (to deliver signals or what have you).