As the chief engineer at a highly successful operating systems company, you must make tough choices regarding engineering trade offs every day. As a former Linux administrator, your goal is to make the lives of other administrators easier while ensuring the company’s operating systems can be easily configured to meet new business needs.
Your engineering team wants to make architectural changes to the company’s customized distribution of the Linux operating system—specifically, the memory allocation mechanism used by the kernel. The team wants you to weigh in by giving them guidance on two important areas of memory management.
Answer both positions below and provide a well-researched and technically accurate answer.
· Position 1: Explain how memory managed as separate address spaces provides memory protection for multiple processes. Is this model more or less complex than having all processes use the same memory space? Are there security concerns?
· Position 2: Explain the benefit of using memory allocation data structures composed of linked lists. Address the concepts of first, best, and quick fits. Are there other data structures that would be more suitable? Given that Linux is open source, does the administrator of a Linux system have the option of selecting another memory allocation architecture?