Assignment 1 Solution

  1. What components make up the operating system kernel? [5]
    1. booting and initialisation routines
    2. device drivers
    3. interrupt handlers
    4. file, memory, process and network managers (in monolithic kernels)
    5. message passing (in microkernel systems)
  2. Rank the following in terms of speed, fastest to slowest: I/O devices, processor, main memory, registers, secondary storage, users. [3]
  3. What names are given to operating systems that have the following? [5]
    1. multi-user or time-sharing: more than one user
    2. batch processing: more than one job submitted at a time
    3. multiprogramming: more than one program in memory at a time
    4. multitasking: more than one process sharing the processor
    5. multiprocessing: more than one processor
  4. What is the difference between a system call and an interrupt? [4]
    1. a hardware interrupt is generated by hardware such as a disk or I/O peripheral
    2. a system call is a "software interrupt" generated by application software to control hardware
  5. List three reasons a system administrator would need to create a file using a command language.
    What are two names for these files? [5]
    1. user account creation and configuration, software installation, system monitoring and logging, file cleanup, backup, etc.
    2. batch files or shell scripts 
  6. What type of user interface is used to control the computer by typing a line of text at a prompt?
    What do DOS and UNIX use to make sense of what the user typed? [3]
    1. command-line or command-based user interface
    2. Both use a search path to look for the program to execute the command
    3. DOS uses internal commands via command.com and external commands in a directory like c:\windows\command
    4. UNIX uses a shell program
  7. What are the purposes of command switches? [2]
  8. What is a search path? [2]
  9. How could you use UNIX system calls to start a new program? [2]
  10. What factors are considered when scheduling a job using job control language? [5]
  11. Briefly explain the use of the process stack. [2]
  12. Give two similarities and two differences between a process and a thread.[4]
  13. What properties of processes determine which process should use the CPU next? [5]
  14. List three types of code files which can be present in memory on a computer running Windows. [3]
    1. Executable file (.exe, .com) or batch file (.bat) (system program or user application)
    2. Library file (.dll)
    3. Device drivers (.sys, .drv)