Wednesday, 29 October 2014

Operating System

Types of Operating System

Types of Operating System


     One of the main limitations imposed on programmers in the early days of computing was the size of the computer's memory. If the program was larger than the available memory, it could not be loaded, which placed severe restrictions on program size. The obvious solution would be to increase the amount of memory available, but this would significantly increase the cost of the computer system. One way for a programmer to overcome these limitations was to use overlays. The programmer divided the program into a number of logical sections. A small portion of the program had to remain in memory at all times, but the remaining sections (or overlays) were loaded only when they were needed. The use of overlays allowed programmers to write programs that were much larger than physical memory, although responsibility for managing memory usage rested with the programmer rather than the operating system.

  • The entire program and data of a process must be in the physical memory for the process to execute.
  • The size of a process is limited to the size of physical memory.
  • If a process is larger than the amount of memory, a technique called overlays can be used.
  • Overlays is to keep in memory only those instructions and data that are needed at any given time.
  • When other instructions are needed, they are loaded into space that was occupied previously by instructions that are no longer needed.
  • Overlays are implemented by user, no special support needed from operating system, programming design of overlay structure is complex

Page Stealing

When this supply becomes low, OS uses page stealing to replenish it, that is, it takes a frame assigned to an active user and makes it available for other work. The decision to steal a particular page is based on the activity history of each page currently residing in a central storage frame. Pages that have not been active for a relatively long time are good candidates for page stealing.

Belady's Anamaly

This is a stage which occurs in FIFO page replacement algorithm, in which  a large number of page fault happens.

Preemptive scheduling

Task are usually assigned with priority at times it is necessary to run a certain task that has higher priority before another task although it is running  therefore the running task is interrupted for some time and resumes later when the priority task has finished its execution. This is called preemptive scheduling
E.g. Round-Robin


 In non preemptive scheduling a running task is executed till. it cannot be interrupted
E.g. FIFO 

Tuesday, 21 October 2014

Computer Memory


In computing, memory refers to the physical devices used to store programs (sequences of instructions) or data (e.g. program state information) on a temporary or permanent basis for use in a computer or other digital electronic device. The term primary memory is used for the information in physical systems which function at high-speed (i.e. RAM), as a distinction from secondary memory, which are physical devices for program and data storage which are slow to access but offer higher memory capacity. Primary memory stored on secondary memory is called "virtual memory".


Volatile memory

Volatile memory is a type of storage whose contents are erased when the system's power is turned off or interrupted. For example, RAM is volatile; meaning users will lose a document if they do not save their work to a non-volatile classification of memory, such as a hard drive, before shutting down the computer.


Non-volatile is a term used to describe any memory or storage that is saved regardless if the power to the computer is on or off. The best example of non-volatile memory and storage is a computer hard drive, flash memory, and ROM. If data is stored on a hard drive, it will remain on that drive regardless if the power is interrupted, which is why it is the best place to store your data and documents. This is also how your computer keeps the time and other system settings even when the power is off.

Wednesday, 8 October 2014

Hamming Code

Data Error

Data error is term which occurs when we send data and it’s not received as we send.

Error Type

There are two type of error single bit and multiple bits (Burst)

Error detection and Correction

Error detection technique are user detect an error on the other hand error correction technique enable us to resolve an error. We can remove one, two and three bit error only because burst error may occur extremely.

Hamming code

Hamming code is a set of error-correction code s that can be used to detect and correct bit errors that can occur when computer data is moved or stored. Hamming code is named for R. W. Hamming of Bell Labs.