0% found this document useful (0 votes)
28 views2 pages

Key Concepts of Operating Systems Explained

This document contains 29 questions about operating system concepts including: 1. The three main purposes of an operating system are resource management, abstraction, and control. 2. Operating system structures include kernels, virtual machines, and layers. Kernels provide essential services while virtual machines and layers separate components. 3. The operating system may forsake efficiency to improve security, reliability, or fairness when resources are wasted preventing vulnerabilities or prioritizing certain processes.

Uploaded by

Anjana Maganti
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views2 pages

Key Concepts of Operating Systems Explained

This document contains 29 questions about operating system concepts including: 1. The three main purposes of an operating system are resource management, abstraction, and control. 2. Operating system structures include kernels, virtual machines, and layers. Kernels provide essential services while virtual machines and layers separate components. 3. The operating system may forsake efficiency to improve security, reliability, or fairness when resources are wasted preventing vulnerabilities or prioritizing certain processes.

Uploaded by

Anjana Maganti
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Assignment 1:

1. What are the three main purposes of an operating system?


2. Discuss the Operating System Structures. Describe the various types of O.S Structures.
3. We have stressed the need for an operating system to make efficient use of the computing
hardware. When is it appropriate for the operating system to forsake this principle and to
“waste” resources? Why is such a system not really wasteful?
4. What is the main difficulty that a programmer must overcome in writing an operating system
for a real-time environment?
5. Keeping in mind the various definitions of operating system, consider whether the operating
system should include applications such as web browsers and mail programs. Argue both that
it should and that it should not, and support your answers.
6. How does the distinction between kernel mode and user mode function as a rudimentary
form of protection (security) system?
7. Explain about
a. User Mode and Kernel Mode with a suitable example/scenario.
b. Multitasking and Multiprogramming with a suitable example/scenario.
8. Which of the following instructions should be privileged?
a. Set value of timer.
b. Read the clock.
c. Clear memory.
d. Issue a trap instruction.
e. Turn off interrupts.
f. Modify entries in device-status table.
g. Switch from user to kernel mode.
h. Access I/O device.
9. Some early computers protected the operating system by placing it in a memory partition that
could not be modified by either the user job or the operating system itself. Describe two
difficulties that you think could arise with such a scheme.
10. Some CPUs provide for more than two modes of operation. What are two possible uses of
these multiple modes?
11. What do you mean by multicore processor? Briefly Explain about core i3, core i5 and core i7
processors.
12. Differentiate between symmetric and asymmetric multiprocessors. You should draw the
diagram also in support of your explanation.
13. Give two reasons why caches are useful. What problems do they solve? What problems do
they cause? If a cache can be made as large as the device for which it is caching (for instance,
a cache as large as a disk), why not make it that large and eliminate the device?
14. Distinguish between the client–server and peer-to-peer models of distributed systems.
15. What is the purpose of interrupts? How does an interrupt differ from a trap? Can traps be
generated intentionally by a user program? If so, for what purpose?
16. Direct memory access is used for high-speed I/O devices in order to avoid increasing the
CPU’s execution load.
a. How does the CPU interface with the device to coordinate the transfer?
b. How does the CPU know when the memory operations are complete?
c. The CPU is allowed to execute other programs while the DMA controller is
transferring data. Does this process interfere with the execution of the user programs?
If so, describe what forms of interference are caused.
17. What is the purpose of system calls?
18. What are the five major activities of an operating system with regard to process
management?
19. What are the three major activities of an operating system with regard to memory
management?
20. What are the three major activities of an operating system with regard to secondary-storage
management?
21. What is the purpose of the command interpreter? Why is it usually separate from the kernel?
22. What system calls have to be executed by a command interpreter or shell in order to start a
new process?
23. What do you mean by system calls? What are the different categories of system calls?
Explain in detail.
24. What is the purpose of system programs?
25. What is the main advantage of the layered approach to system design? What are the
disadvantages of the layered approach?
26. List five services provided by an operating system, and explain how each creates
convenience for users. In which cases would it be impossible for user-level programs to
provide these services? Explain your answer.
27. Why do some systems store the operating system in firmware, while others store it on disk?
28. How could a system be designed to allow a choice of operating systems from which to boot?
What would the bootstrap program need to do?
29. What do you mean by system calls? What are the different categories of system calls?
Explain in detail.

Common questions

Powered by AI

The command interpreter is separated from the kernel to facilitate flexibility and ease of updates without affecting the core system functionalities. Its main purpose is to read and execute user commands, serving as an interface between the user and the operating system .

The main advantage of the layered approach to system design is modularity, which simplifies debugging and updating individual layers without affecting others . However, disadvantages include possible inefficiency due to the overhead of layer interactions and complexity in defining strict interfaces and abstractions between layers .

Symmetric multiprocessor systems allow all processors to share the same memory and access I/O devices, leading to balanced load distribution and simple design. However, they can face contention for shared resources and scaling challenges . In contrast, asymmetric systems designate specific processors for certain tasks, potentially optimizing performance and reducing contention but introducing complexity in task assignment and lower hardware utilization efficiency .

Including applications like web browsers and mail programs in an operating system can streamline integration and reduce compatibility issues, potentially enhancing user experience and security with unified updates. However, this approach can lead to unnecessary bloat and reduced system performance, limit user choice, and complicate the distinction between the core OS and add-on applications .

One difficulty is the lack of flexibility in updating the operating system, which could lead to security vulnerabilities if not patched promptly. Another issue is the inefficient use of memory resources, as the space allocated may not be optimally used across all operational contexts, potentially wasting valuable memory .

Interrupts are usually signals from hardware that require immediate attention from the operating system, whereas traps are software-generated interrupts arising from errors or specific requests for operating system services. Traps can be intentionally generated by user programs to invoke system calls or handle special conditions .

In circumstances where response time is critical, such as in real-time systems or interactive applications, it may be justified for an operating system to waste resources. This is because achieving faster response times can outweigh the cost of resource inefficiency . Furthermore, such resource usage is not genuinely wasteful if it enhances the overall system performance or meets specific application demands that require priority execution .

Multiple modes of operation allow finer control over system resources and security. They can provide benefits such as improved isolation of processes, allowing for a more granular allocation of system privileges and increased stability and security by restricting direct hardware access to the most trusted system components .

System calls provide a controlled interface between user applications and the operating system for executing privileged operations. They are essential for process management, input/output operations, file system manipulation, and enabling communication between processes .

Kernel mode allows the operating system unrestricted access to hardware, whereas user mode restricts applications to a safer, controlled environment. This distinction serves as a security mechanism by preventing user applications from performing potentially harmful operations or accessing critical system resources directly .

You might also like