Commit c98f206
Changed files (1)
doc
doc/assignment1.md
@@ -174,8 +174,41 @@ Instructions: Please answer the following questions in complete sentences. Your
multiple cores uses less power than multiple single-core chips.
1. Describe the relationship between an API, the system-call interface, and the operating system.
+
+ API: Application Programming Interface
+ System-call interface: The API provided by the operating system for executing privileged instructions.
+ Operating System: The system managing the interface between the hardware and software.
+
+ The system-call interface is an API provided by the operating systems so that
+ user programs can request access to perform functions like reading/writing to
+ I/O devices etc.
+
1. Describe some requirements and goals to consider when designing an operating system.
+
+ 1. Provide a system call interface for user mode programs to use.
+ 2. Provide compilers, linkers etc to build user mode programs.
+ 3. Provide consistent abstractions to shield user mode programs from needing to know the details of each piece of hardware.
+ 4. Can execute multiple tasks concurrently
+ 5. Can operate against different combinations of hardware without impact to user mode programs.
+ 6. Process management
+ 7. Memory management
+
1. Explain why a modular kernel may be the best of the current operating system design techniques.
+
+ The kernel has a set of core components and links in additional services either during boot time
+ or during run time. Such a strategy uses dynamically loadable modules and is common in modern
+ implementations of UNIX, such as Solaris, Linux and macOS.
+
+ Solaris is organized around a core kernel with seven types of loadable kernel modules:
+
+ 1. Scheduling classes
+ 2. File systems
+ 3. Loadable system calls
+ 4. Executable formats
+ 5. STREAMS modules
+ 6. Miscellaneous
+ 7. Device and bus drivers
+
1. Distinguish between virtualization and simulation.
## Part 2: Design Considerations (40 marks)