Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

Chapter 1: Computer System Overview

1. List and briefly define the four main elements of a computer.


Processor – CPU of computer system.
Main Memory – known as DRAM in computer system and this memory is volatile.
I/O Modules – this module are secondary memory devices and terminals.
System Bus – communication among processors, memory, and I/O.
2. Define the two main categories of processor registers.
User-visible registers. This enables programmer to minimize main memory reference by
optimizing register use. Control and status register used by processor to control operating of
the processor.
3. What is an interrupt?
Interrupt the normal sequencing of the processor and most of the I/O devices have slower
performance than the processor. When CPU is interrupted, it stops what it is doing and
immediately transfers execution to a fixed location.
4. What are the differences between a trap and an interrupt?
The main difference between trap and interrupt is that trap is triggered by a user program to
invoke OS functionality while interrupt is triggered by a hardware device to allow the
processor to execute the corresponding interrupt handler routine.
5. What is cache memory?
Cache memory is a memory that are in a CPUs. This memory stores the frequently accessed
data into the cache memory. Cache memory is volatile and there are L1, L2, L3. L3 are in
latest CPU technology.
6. Explain the potential performance disadvantage of a microkernel operating system.
Performance overhead of user space to kernel space communication.
7. What is the basic form of communications between processes or threads in a
microkernel operating system?
Microkernel communication takes place between user modules using message passing.
Microkernel is reliable and brings distributed system support where message is sent without
knowing what the target machine is.
8. What is Operating System? Briefly explain three objectives of an operating system
design.
Operating system is a program that acts as an intermediary between a user of a computer and
hardware. Objectives are to make the computer system convenient to use in an efficient
manner. To hide the details of the hardware resources from the users. To manage the
resources of a computer system.
9. What is the kernel of an operating system? What are the general functions of the
kernel?
Kernel is a portion of operating system that is in main memory or RAM. It contains most
frequently used functions.
10. Give the difference between uniprogramming and multiprogramming.
For uniprogramming, the processor must wait for I/O instructions to complete before
preceding but for multiprogramming, processor can switch to other job without waiting when
one job needs to wait for I/O.
11. Draw some figures that show the operation examples of uniprogramming and
multiprogramming with three programs.

12. Define symmetric multiprocessing (SMP).


SMP is the processing of programs by multiple processors that share a common operating
system and memory.
13. State THREE of the characteristics of modern operating systems.
Multi-Threading, Micro-Kernel Architecture, Object-Oriented Design
14. What is an operating system? Give two (2) examples of operating systems.
An operating system is the most important software that runs on a computer. It manages the
computer's memory and processes, as well as all of its software and hardware. 2 examples of
operating systems are Windows and MacOS.
15. What is multiprogramming and what is the main advantage?
Multiprogramming is where the processor can switch to other job to process without waiting
for when one job needs to wait for I/O. Advantage is it can improve performance of a
computer and it can be faster.
16. What are the differences between a trap and an interrupt?
The main difference between trap and interrupt is that trap is triggered by a user program to
invoke OS functionality while interrupt is triggered by a hardware device to allow the
processor to execute the corresponding interrupt handler routine.
17. What are booting and bootstrap program?
difference between bootstrap and boot is that bootstrap is computing to compile the tools that
will be used to compile the rest of the system or program while boot is computing to
bootstrap. Example like to start a system
18. What is the distinction between blocking and nonblocking with respect to messages?
Blocking is where the process must wait to receive the message before it continues. Non-
blocking is where the process continues to execute while the message is in transit.
19. Briefly explain the benefits of a microkernel organization.
Flexibility where new features are added. Extensibility. It allows the addition of new services.

20. What is the purpose of interrupts? What are the differences between a trap and an
interrupt? Can traps be generated intentionally by a user program? If so, for what
purpose?
An interrupt is purposed to deal with the cause of the interrupt; control is then returned to the
interrupted context and instruction. A trap is a software-generated interrupt. An interrupt can
be used to signal the completion of an I/O to obviate the need for device polling. A trap can
be used to call operating system routines or to catch arithmetic errors.
21. Direct memory access (DMA) 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?
CPU sets up DMA registers with pointers to the source and destination of the transfer along
with counter of the transferred bytes, then the DMA controller takes charge of the transfer to
the bus while CPU returns to accomplish other tasks.
b. How does the CPU know when the memory operations are complete?
When the operation completed the DMA, controller send an interrupt to the CPU.
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 is caused.
The CPU and the DMA might compete for cycles on a shared bus. Some systems are using
switch rather than bus; therefore, multiple tasks can be performed simultaneously.

22. 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?
Caches are useful when more components need to exchange data where the transfer speeds
are much faster when using caches. Next, caches can get data faster that getting it from main
memory. If we want to make cache large, it will be very expensive.
23. Define the essential properties of the following types of operating systems:
a. Batch - Jobs with similar needs are batched together and run through the computer as a
group by an operator
b. Interactive - This system is composed of many short transactions where the results of the
next transaction may be unpredictable.
c. Time sharing - This system uses CPU scheduling and multiprogramming to provide
economical interactive use of a system.
d. Real time - Used in a dedicated application. This system reads information from sensors
and must respond within a fixed amount of time.
e. Network - Provides OS system features across a network such as file sharing.
f. Parallel - Used in symptoms where there are multiple CPU’s each running the same copy
of OS.
g. Distributed – This handle jobs which are serviced by multiple CPUs.
h. Clustered – Composed of two or more individual systems that are coupled as a single unit
i. Handheld – Designed to use less memory and require fewer resources.
24. List five services provided by an OS that are designed to make it more convenient
for users to use the computer system. In what aces it would be impossible for user-level
programs to provide these services? Explain.

i. Program Execution
 It allows the user to execute programs by providing convenient environment
for development and execution of programs.
 A user level program cannot properly allocate CPU time.
ii. I/O operations
 The operating system provides an environment to handle I/O operations.
 A user level program cannot control the I/O devices directly.
iii. File-system manipulation
 A user need not to know the details of secondary storage system. All a user
can see is that his task is accomplished.
 User made programs cannot be made to allocate free blocks when available
and deallocate the blocks after deletion.
iv. Communications
 There are times when a process needs to communicate with other process. All
this is taken care by operating system.
 Communication takes place in the form of data packets and they need access
to the network device but user level programs cannot provide that.
v. Error detection

You might also like