operating system
CMET 331-01 Homework 2
Due at 1:00 pm, Thursday, September 28, 2017
No credit after 5:00 pm, Wednesday, October 4, 2017
Solutions
1. (10 points) What is process? Is there any difference between the process and program?
A process is a program in execution. It is a unit of work within the system.
Program is a passive entity, process is an active entity.
2. (20 points) List the services provided by OS?
User interface
Program execution
I/O operations
File-system manipulation
Communications
Error detection
Resource allocation
Accounting
Protection and security
3. (20 points) What is CLI? What is GUI?
CLI means command Line Interface.
GUI means Graphic User Interface.
4. (20 points) What is the purpose of system calls? Explain the relationship between API, System Call and OS.
A system call is the mechanism used by an application program to request service from the operating system.
System calls are mostly accessed by programs via a high-level Application Program Interface (API) rather than direct system call use.
The caller need know nothing about how the system call is implemented. Just needs to obey API and understand what OS will do as a result call. Most details of OS interface hidden from programmer by API.
5. (10 points) Can MS-DOS run multiprogramming in the same time?
No.
6. (10 points) Is Unix a layered operation system? If so, how many layers?
Unix is a layered operation system. Including the computer hardware, it has three layers which are hardware, kernel and system programs.
7. (10 points) What is the virtual machine? What is the beneficial of the virtual machine?
In computing, a virtual machine (VM) is an emulation of a particular computer system.
Benefits of virtual machine:
1) A virtual machine (VM) is a software implementation of a machine (for example, a computer) that executes programs like a physical machine.
2) The virtual-machine concept provides complete protection of system resources since each virtual machine is isolated from all other virtual machines. This isolation, however, permits no direct sharing of resources.
A virtual-machine system is a perfect vehicle for operating-systems research and development. System development is done on the virtual machine, instead of on a physical machine and so does not disrupt normal system operation.