(Short Questions and Answers)
Q1: Define Operating System?
Answer: An Operating System is a program that controls the execution of application programs and acts as an interface between a user and computer hardware.
Q2: What is the difference between uniprocessor, multiprocessor and symmetric multiprocessing (SMP)?
Answer: Uniprocessor systems have a single processor while multiprocessor systems contain two or more processors that share resources like physical memory and peripheral devices. Symmetric multiprocessing (SMP) system have processors acting peers and run independently.
Q3: What are clustered systems?
Answer: Multiprocessor systems connected by a local area network.
Q4: What are the different operating systems? Define each one.
① Batched operating systems: Batched operating system the user gives their jobs to
the operator who converts a similar type of job in a batch and executes. This is time-consuming but makes the CPU busy all the time i.e. CPU can't be in an idle state.
② Distributed operating systems: Distributed systems work in a network. They can
share the network resources, communicate with each other.
③ Time-sharing operating systems: It is a logical extension of the multiprogramming
OS where the user can interact with the program. The CPU executes multiple jobs by
switching among them by providing a specific time period to each process.
④ Multi programmed operating systems: Multi-programmed operating systems can
execute a number of programs concurrently using job-scheduling.
⑤ Real-time operating systems: It is defined as an operating system to give
the maximum time for each of the critical operations that it performs, like OS calls
and interrupt handling.
Q5: What do you mean by Job-pool? Define Job-scheduling.
Job-Pool: The term "Job pool" refers to, where jobs are queued to be executed when resources are available. The job pool contains both jobs that are currently executing and jobs that have been scheduled but are not yet being executed.
Job-scheduling: Job scheduling is the process of allocating system resources to many different tasks by an operating system. The operating system fetches a group of programs from the job-pool in the secondary storage which contains all the programs to be executed and places them in the main memory. This process is called job scheduling.
Q6: Give examples of hardware failure interrupts?
Answer: Such interrupts are generated by a failure, such as power failure or memory parity error.
Q7: What do you mean by preemptive and non-preemptive scheduling?
Answer: The executing process in preemptive scheduling is interrupted in the middle of execution when a higher priority one comes. Whereas, the executing process in non-preemptive scheduling is not interrupted in the middle of execution and waits till its execution.
Q8: What are the differences between multiprogramming, multiprocessing and distributed processing?
Multiprogramming: The management of multiple processes within a uniprocessor system.
Multiprocessing: The management of multiple processes within a multiprocessor system.
Distributed processing: The management of multiple processes executing on multiple, distributed computer systems. e.g. cluster systems
Q9: What is a deadlock?
Answer: A deadlock is a situation where the execution of two or more processes is blocked because each process holds some resource and waits for another. Deadlock is a specific situation or condition where two processes are waiting for each other to complete so that they can start. But this situation causes hang for both of them.
Q10: What do you mean by System Calls and System Boot?
Answer: System calls provide an interface to the services made available by an operating system.
System Boot: The procedure of starting a computer by loading the kernel is known as System Booting. A small piece of code known as the bootstrap program or bootstrap loader locates the kernel, loads it into the main memory, and starts its execution.
Q11: What do you Mean by the boot-strap program?
Answer: A bootstrap program is the first code that is executed when the computer system is started. The entire operating system depends on the bootstrap program to work correctly as it loads the operating system.
Q12: What is context switching?
Answer: Transferring the control from one process to another process requires saving the state of the old process and loading the saved state for the new process. This task is known as context switching.
Q13: What is a thread?
Answer: A thread is a program line under execution. Thread sometimes called a lightweight process, is a basic unit of CPU utilisation; it consists of a thread id, a program counter, a register set, and a stack.
Q14: Explain the first-fit, best-fit, and worst-fit strategies used for memory allocation?
• First fit: Allocate the first hole that is big enough. Searching can start either at the beginning of the set of holes or at the location where the previous first-fit search ended. We can stop searching as soon as we find a free hole that is large enough.
• Best fit: Allocate the smallest hole that is big enough. We must search the entire list unless the list is ordered by size. This strategy produces the smallest leftover hole.
• Worst fit: Allocate the largest hole. Again, we must search the entire list, unless it is sorted by size. This strategy produces the largest leftover hole, which may be more useful than the smaller leftover hole from a best-fit approach.
Q15:What do you mean By MVT and MFT?
Answer: MFT (Multiprogramming with a Fixed number of Tasks) is one of the old memory management techniques in which the memory is partitioned into fixed-size partitions and each job is assigned to a partition. The memory assigned to a partition does not change.
MVT (Multiprogramming with a Variable number of Tasks) is the memory management technique in which each job gets just the amount of memory it needs. That is, the partitioning of memory is dynamic and changes as jobs enter and leave the system.
Q16: What is Paging? Define Pages and Frames.
Answer: Paging is used to solve the external fragmentation problem in an operating system. Paging is a fixed size partitioning scheme. In paging, secondary memory and main memory are divided into equal fixed-size partitions.
Pages: The partitions of secondary memory are called pages.
Frames: The partitions of the main memory are called frames.
Q17: What do you mean by Segmentation? Also, define Segments?
Answer: Segmentation is a variable size partitioning scheme. In segmentation, secondary memory and main memory are divided into partitions of unequal size. The size of partitions depends on the length of the modules.
Segments: The partitions of secondary memory are called segments.
Q18: What do you mean by virtual memory?
Answer: Virtual memory is a memory management technique that allows the execution of processes that are not completely in memory. One major advantage of this scheme is that programs can be larger than physical memory. Virtual memory abstracts main memory into an extremely large, uniform array of storage, separating logical memory as viewed by the user from physical memory.
Q19: What are microkernels?
Answer: The idea behind microkernels is that only the bare essentials should run in a privileged mode in the operating system kernel. All other components should run as normal applications.
Q20: What is the concept of demand paging? What is Page Fault?
Demand paging specifies that if an area of memory is not currently being used, it is swapped to disk to make room for an application's need.
Page Fault: A page fault occurs when a program attempts to access a block of memory that is not stored in the physical memory or RAM.
Q21: What is a Cache Memory?
Answer: Cache memory is an extremely fast memory type that acts as a buffer between RAM and the CPU. It holds frequently requested data and instructions so that they are immediately available to the CPU when needed. Cache memory is used to reduce the average time to access data from the main memory.
Q22: What is Thrashing?
Answer: This high paging activity is called thrashing. A process is thrashing if it is spending more time paging than executing.
Q23: What are countermeasures to threats to an operating system?
Answer: Measures include intrusion detection systems, authentication protocols, access control mechanisms, and firewalls.
Q24: What is a buffer overflow attack?
Answer: A condition at an interface under which more input can be placed into a buffer or data-holding area than the capacity allocated, overwriting other information.
Q25: What is a micro-controller?
Answer: A microcontroller is a single chip that contains the processor, nonvolatile memory for the program (ROM or flash), volatile memory for input and output (RAM), a clock, and an I/O control unit.
Q26: What is an embedded system?
Answer: An embedded system is any device that includes a computer chip, but that is not a general-purpose workstation, or desktop or laptop computer.