Hello Readers,
We'll continue with the topic of operating systems. Previous article on OS can be found at
Operaing Systems- Part 1. Use comments section for queries, clarifications!
Multiple parts of a process are as follows:
We'll continue with the topic of operating systems. Previous article on OS can be found at
Operaing Systems- Part 1. Use comments section for queries, clarifications!
Graphical User Interface
It's a program interface that takes advantage of computer's graphics capabilities to make programs easier to use.
Basic components are of GUI are as follows:
1. Pointer - A symbol that appears on the display screen and which you move to select objects. Text processing applications use an I-beam pointer that is shaped like capital I.
2. Pointing Device - A device such as mouse or trackball that enables you to select objects.
3. Icons - small pictures that represent commands, files or windows. By clicking on icons, you execute commands
4. Desktop - The area on display screen where icons are grouped.
5. Windows - You can divide the screen into different areas and can display different files/programs in each window.
6. Menus - Most GUIs let you execute commands by selecting a choice from menus.
Microsoft Disk Operating System (MS DOS)
Various features of MS DOS are as follows:
- Its a non graphical commands line OS.
- It was originally written by Tim Paterson and introduced by MS in 1981.
- DOS has character user interface i.e communication between a computer and the user can be done by using characters.
- Prompt is the place where commands are issued. It looks like C:\> or C:\Windows\>
Processes in OS
A program in execution is called a process. Process execution must progress in sequential fashion. A process is an active entity and program is a passive entity. A program becomes a process when executable file is loaded into memory. A process is represented by 'pid' in Linux.
- Program Code - text
- Program Counter - contains address of next instruction
- Stack -contains temporary data like return address and local variables
- Heap - contains memory dynamically allocated during run time
- Data Section - contains global variables
Process State
As a process executes, it changes states and at any given time, can be in any of the following states:
- New - Process is being created.
- Ready - Process is waiting to be assigned to the processor.
- Running - When instructions related to that process are executed by CPU
- Waiting - Process is waiting for a resource to become available or for some event to occur.
- Terminated - Process has finished execution and released resources that it was using.
Diagram below will make it more clear.
Process Control Block
Process control block (PCB) has information associated with each process. It is also called task control block.
- Process State - waiting, ready, running etc.
- Process ID and Parent Process ID.
- CPU Registers - contents of all process-centric registers
- Program Counter. PC holds the address of next instruction to be executed.
- CPU Scheduling Information - priorities and scheduling queue pointers
- Memory Management Information - memory allocated to processes via page tables
- Accounting Information - clock time, time limits, number of accounts.
- I/O Status Information - I/O devices allocated to process and list of open files to be read/written to.
Interesting fact about OS
95% of Linux is written in C language, the second language used in assembly language.
Deepak A