Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

1.(10 points) What is process? Is there any difference between the process and p

ID: 3750634 • Letter: 1

Question

1.(10 points) What is process? Is there any difference between the process and program? 2. (20 points) List the services provided by OS? 3.(20 points) What is CLI? What is GUI? 4. (20 points) What is system call? Explain the relationship between API, System Call and OS. 5. (10 points) Can MS-DOS run multiprogramming in the same time? 6. (10 points) Is Unix a layered operation system? If so, how many layers? 7. (10 points) What is the virtual machine? What is the beneficial of the virtual machine?

Explanation / Answer

ANSWER:

1.

Process Defination :

A process is an instance of a program running in a computer. It is close in meaning to task , a term used in some operating systems. In UNIX and some other operating systems, a process is started when a program is initiated (either by a user entering a shell command or by another program). Like a task, a process is a running program with which a particular set of data is associated so that the process can be kept track of. An application that is being shared by multiple users will generally have one process at some stage of execution for each user.

A process can initiate a subprocess, which is a called a child process (and the initiating process is sometimes referred to as its parent ). A child process is a replica of the parent process and shares some of its resources, but cannot exist if the parent is terminated.

Difference between Process and a Program :

1)A process invokes or initiates a program. It is an instance of a program that can be multiple and running the same application.

Example:- Notepad is one program and can be opened twice.

2)

A program is a set of instructions that are to perform a designated task, where as the process is an operation which takes the given instructions and perform the manipulations as per the code, called ‘execution of instructions’. A process is entirely dependent of a ‘program’.

- A process is a module that executes modules concurrently. They are separate loadable modules. Where as the program perform the tasks directly relating to an operation of a user like word processing, executing presentation software etc.

3)process is a program in execution,
program is a set of instruction that can be executed on the computer.
hope it helps

4)a program is a set of instruction and a passive entity.while a program in execution is a process and it is a active entity. process is a unit of work in a system.
program ia s part of process.

Services provided by OS :

Also in summary :

CLI and GUI :

Program execution

I/O operations

File System manipulation

Communication

Error Detection

Resource Allocation

Protection

Command Line Interface

A command line interface (CLI) enables users to type commands in a terminal or console window to interact with an operating system. Users respond to a visual prompt by typing a command on a specified line, and receive a response back from the system. Users type a command or series of commands for each task they want to perform.

This book describes how to use the command line interface to perform various system tasks.

Graphical User Interfaces

A graphical user interface (GUI) uses graphics, along with a keyboard and a mouse, to provide an easy-to-use interface to a program. A GUI provides windows, pull-down menus, buttons, scrollbars, iconic images, wizards, other icons, and the mouse to enable users to interact with the operating system or application.

The Solaris 9 operating environment supports two GUIs, the Common Desktop Environment (CDE) and the GNOME desktop.

Ease

Due to a higher degree of memorization and familiarity needed for operation and navigation, new users find operating a command line interface more difficult than a GUI.

Because a GUI is much more visually intuitive, new users almost always pick up this interface faster than a CLI.

Control

Users have more control over both the file and operating systems in a command line interface. For example, users can copy a specific file from one location to another with a one-line command.

Although a GUI offers ample access to the file and operating systems, advanced tasks may still need to utilize the command line.

Multitasking

Although many command line environments are capable of multitasking, they do not offer the same ease and ability to view multiple things at once on one screen.

GUI users have windows that enable a user to view, control, manipulate, and toggle through multiple programs and folders at same time.

Speed

Command line users only need to utilize their keyboards to navigate a the interface. Additionally, they often only need to execute a few lines to perform a task.

Using both a mouse and keyboard to navigate and control your operating or file system is going to be much slower than someone who is working in a command line.

Resources

A computer that is only using the command line takes a lot less of the computer's system resources than a GUI.

A GUI requires more system resources because of the elements that require loading, such as icons and fonts. Video, mouse, and other drivers need to be loaded, taking up additional system resources.

Scripting

A command line interface enables a user to script a sequence of commands to perform a task or execute a program.

Although A GUI enables a user to create shortcuts, tasks, or other similar actions, it doesn't even come close in comparison to what is available through a command line.

Remote access

When accessing another computer or device over a network, a user can only manipulate the device or its files with a command line interface.

Although remote graphical access is possible. Not all computers and network equipment has this ability.

Diversity

After you've learned how to navigate and use a command line, it's not going to change as much as a new GUI. Although new commands may be introduced, the original commands always remain the same.

Each GUI has a different design and structure when it comes to performing different tasks. Even different iterations of the same GUI, such as Windows, can have hundreds of different changes between each version.

Strain

The command line allows the user to keep their hands on the keyboard, almost never touching the mouse. Moving back and forth between a keyboard and mouse can cause additional strain and may help contribute toCarpal Tunnel Syndrome.

Although shortcut keys can help reduce the amount of times you have move from the keyboard to the mouse, you will still be moving much more between devices in

Question 4 :

The system call provides an interface to the operating system services.

Application developers often do not have direct access to the system calls, but can access them through an application programming interface (API). The functions that are included in the API invoke the actual system calls. By using the API, certain benefits can be gained:

Difference between system call and API :

A system call is a function.subroutine which interrupts the currently executing program and transfers control to the interrupt routine.The contents of the executing program are saved and after the interrupt routine finishes its function,control is transferred back to the executing program. If we talk in the context of Linux then System calls are called kernel mode.

Whereas API (Application Programming Interface) is a function or a set of functions, objects, protocols or data-structures for the support of application development for developers/programmers. It is actually a kind of function definition which specifies how to make available of a specific service of the system/OS to the other program/process or system.

Application Programming Interface (API) is a set of functions, objects, protocols or datastructures for the support of application development for developers/programmers. It is actually a kind of function definition which specifies how to make available of a specific service of the system/OS. The API's are available from library or from Operating system itself. Whenever a programmer need a specific service from OS, he/she can use appropriate API to do that.

Processes in a system are run in different modes, process run in user mode have no access to the privileged instructions. If they want perform any privileged instructions or need of any services they request kernal for that service through System Calls. System calls are made by way of software interrupt. This is actually a request for the service whereas API is a function description that can be used by the programmer for his programs, its like a tool used to obtain a specific task in his programs.

Ease

Due to a higher degree of memorization and familiarity needed for operation and navigation, new users find operating a command line interface more difficult than a GUI.

Because a GUI is much more visually intuitive, new users almost always pick up this interface faster than a CLI.

Control

Users have more control over both the file and operating systems in a command line interface. For example, users can copy a specific file from one location to another with a one-line command.

Although a GUI offers ample access to the file and operating systems, advanced tasks may still need to utilize the command line.

Multitasking

Although many command line environments are capable of multitasking, they do not offer the same ease and ability to view multiple things at once on one screen.

GUI users have windows that enable a user to view, control, manipulate, and toggle through multiple programs and folders at same time.

Speed

Command line users only need to utilize their keyboards to navigate a the interface. Additionally, they often only need to execute a few lines to perform a task.

Using both a mouse and keyboard to navigate and control your operating or file system is going to be much slower than someone who is working in a command line.

Resources

A computer that is only using the command line takes a lot less of the computer's system resources than a GUI.

A GUI requires more system resources because of the elements that require loading, such as icons and fonts. Video, mouse, and other drivers need to be loaded, taking up additional system resources.

Scripting

A command line interface enables a user to script a sequence of commands to perform a task or execute a program.

Although A GUI enables a user to create shortcuts, tasks, or other similar actions, it doesn't even come close in comparison to what is available through a command line.

Remote access

When accessing another computer or device over a network, a user can only manipulate the device or its files with a command line interface.

Although remote graphical access is possible. Not all computers and network equipment has this ability.

Diversity

After you've learned how to navigate and use a command line, it's not going to change as much as a new GUI. Although new commands may be introduced, the original commands always remain the same.

Each GUI has a different design and structure when it comes to performing different tasks. Even different iterations of the same GUI, such as Windows, can have hundreds of different changes between each version.

Strain

The command line allows the user to keep their hands on the keyboard, almost never touching the mouse. Moving back and forth between a keyboard and mouse can cause additional strain and may help contribute toCarpal Tunnel Syndrome.

Although shortcut keys can help reduce the amount of times you have move from the keyboard to the mouse, you will still be moving much more between devices in