Latest Post

Latest POSTS

Basics of Operating Systems

Definition:

Operating Systems are resource managers. The main resource is computer hardware in the form of processors, storage, input/output devices, communication devices, and data. Some of the operating system functions are: implementing the user interface, sharing hardware among users, allowing users to share data among themselves, preventing users from interfering with one another, scheduling resources among users, facilitating input/output, recovering from errors, accounting for resource usage, facilitating parallel operations, organizing data for secure and rapid access, and handling network communications.

How an Operating System works?
 
Operating systems control different computer processes, such as running a spreadsheet program or accessing information from the computer's memory. One important process is interpreting commands, enabling the user to communicate with the computer. Some command interpreters are text oriented, requiring commands to be typed in or to be selected via function keys on a keyboard. Other command interpreters use graphics and let the user communicate by pointing and clicking on an icon, an on-screen picture that represents a specific command. Beginners generally find graphically oriented interpreters easier to use, but many experienced computer users prefer text-oriented command interpreters.
Operating systems are either single-tasking or multitasking. The more primitive single-tasking operating systems can run only one process at a time. For instance, when the computer is printing a document, it cannot start another process or respond to new commands until the printing is completed.
All modern operating systems are multitasking and can run several processes simultaneously. In most computers, however, there is only one central processing unit (CPU; the computational and control unit of the computer), so a multitasking OS creates the illusion of several processes running simultaneously on the CPU. The most common mechanism used to create this illusion is time-slice multitasking, whereby each process is run individually for a fixed period of time. If the process is not completed within the allotted time, it is suspended and another process is run. This exchanging of processes is called context switching. The OS performs the “bookkeeping” that preserves a suspended process. It also has a mechanism, called a scheduler, that determines which process will be run next. The scheduler runs short processes quickly to minimize perceptible delay. The processes appear to run simultaneously because the user's sense of time is much slower than the processing speed of the computer.
 
 Software Program:
An Operating System is a software program or set of programs that mediate access between physical devices (such as a keyboard, mouse, monitor, disk drive or network connection) and application programs (such as a word processor, World-Wide Web browser or electronic mail client).

 Device Manager:
The operating system provides a set of APIs to the applications for accessing input/output (I/O) devices in a consistent and relatively simple manner regardless of the specifics of the underlying hardwar 

 Security:
Operating systems provide security by preventing unauthorized access to the computer's resources. Many operating systems also prevent users of a computer from accidentally or intentionally interfering with each other

 Slicer :
Modern operating systems provide the capability of running multiple application programs simultaneously, which is referred to as multiprogrammingThe operating system can share the CPU among the processes by using a technique known as time slicing

 Resource Allocator:
The operating system is responsible for sharing the memory among the currently running processes 

 Coordinator:
Manages all resources and settles conflicting requests for resources and also prevent errors and improper use of the computer

 Facilitator :
Provides facilities that everyone needs standard Libraries, Windowing systems which make application programming easier, faster, less error-prone

 Examples of OS:
UNIX , LINUX,Windows NT,Windows 95/98,Netware

Generations of Operating systems

Operating systems, like computer hardware, have undergone a series of revolutionary changes called generations. In computer hardware, generations have been marked by major advances in component  from vacuum tubes (first generation), to transistors (second generation), to integrated circuitry (third generation), to large-scale and very large-scale integrated circuitry (forth generation). The successive hardware generations have each been accompanied by dramatic reductions in costs, size, heat emission, and energy consumption, and by dramatic increases in speed and storage capacity.
  • The 1940's - First Generations
  • The 1950's - Second Generation
  • The 1960's - Third Generation
  • Fourth Generation (1971-Present) Microprocessors
  • Fifth Generation (Present and Beyond) Artificial Intelligence

The 1940's - First Generations

The earliest electronic digital computers had no operating systems. Machines of the time were so primitive that programs were often entered one bit at time on rows of mechanical switches (plug boards). Programming languages were unknown (not even assembly languages). Operating systems were unheard of .

The 1950's - Second Generation

By the early 1950's, the routine had improved somewhat with the introduction of punch cards. The General Motors Research Laboratories implemented the first operating systems in early 1950's for their IBM 701. The system of the 50's generally ran one job at a time. These were called single-stream batch processing systems because programs and data were submitted in groups or batches.

The 1960's - Third Generation

The systems of the 1960's were also batch processing systems, but they were able to take better advantage of the computer's resources by running several jobs at once. So operating systems designers developed the concept of multiprogramming in which several jobs are in main memory at once; a processor is switched from job to job as needed to keep several jobs advancing while keeping the peripheral devices in use.
For example, on the system with no multiprogramming, when the current job paused to wait for other I/O operation to complete, the CPU simply sat idle until the I/O finished. The solution for this problem that evolved was to partition memory into several pieces, with a different job in each partition. While one job was waiting for I/O to complete, another job could be using the CPU.
Another major feature in third-generation operating system was the technique called spooling (simultaneous peripheral operations on line). In spooling, a high-speed device like a disk interposed between a running program and a low-speed device involved with the program in input/output. Instead of writing directly to a printer, for example, outputs are written to the disk. Programs can run to completion faster, and other programs can be initiated sooner when the printer becomes available, the outputs may be printed.
Note that spooling technique is much like thread being spun to a spool so that it may be later be unwound as needed.
Another feature present in this generation was time-sharing technique, a variant of multiprogramming technique, in which each user has an on-line (i.e., directly connected) terminal. Because the user is present and interacting with the computer, the computer system must respond quickly to user requests, otherwise user productivity could suffer. Time-sharing systems were developed to multiprogramming large number of simultaneous interactive users.

Fourth Generation

With the development of LSI (Large Scale Integration) circuits, chips, operating system entered in the system entered in the personal computer and the workstation age. Microprocessor technology evolved to the point that it become possible to build desktop computers as powerful as the mainframes of the 1970s. Two operating systems have dominated the personal computer scene: MS-DOS, written by Microsoft, Inc. for the IBM PC and other machines using the Intel 8088 CPU and its successors, and UNIX, which is dominant on the large personal computers using the Motorola 6899 CPU family.

Chipsets

  • A number of integrated circuits designed to perform one or more related functions. For example, one chipset may provide the basic functions of a modem while another provides the CPU functions for a computer. 
  • Newer chipsets generally include functions provided by two or more older chipsets. In some cases, older chipsets that required two or more physical chips can be replaced with a chipset on one chip.  
  • The term is often used to refer to the core functionality of a motherboard.  


Diagram of the motherboard chipset

NORTHBRIDGE
  • The northbridge, also known as a memory controller hub (MCH) or an integrated memory controller (IMC) in Intel systems (AMD, VIA, SiS and others usually use 'northbridge'), is one of the two chips in the core logic chipset on a PC motherboard, the other being the southbridge.
  • Separating the chipset into the northbridge and southbridge is common, although there are rare instances where these two chips have been combined onto one die when design complexity and fabrication processes permit it.,
SOUTHBRIDGE
  • The Southbridge, also known as an I/O Controller Hub (ICH) or a Platform Controller Hub (PCH) in Intel systems (AMD, VIA, SiS and others usually use 'southbridge'), is a chip that implements the "slower" capabilities of the motherboard in a northbridge/southbridge chipset computer architecture.
  • The southbridge can usually be distinguished from the northbridge by not being directly connected to the CPU. Rather, the northbridge ties the southbridge to the CPU.
                                  explainpoin.blogspot.in
A typical north/southbridge layout

Chipset Characteristics

The characteristics of a chipset can be broken down into six categories: host, memory, interfaces, arbitration, south bridge support, and power management. Each of these categories defines and differentiates one chipset from another. The characteristics defined in each of these categories are as follows:

• Host This category defines the host processor to which the chipset is matched along with its bus voltage, usually GTL+ (Gunning Transceiver Logic Plus) or AGTL+ (Advanced Gunning Transceiver Logic Plus), and the number of processors the chipset will support.

• Memory This category defines the characteristics of the DRAM support included in the chipset, including the DRAM refresh technique supported, the amount of memory support (in megabits usually), the type of memory supported, and whether memory interleave, ECC (error correcting code), or parity is supported.
• Interfaces This category defines the type of PCI interface implemented and whether the chipset is AGP compliant, supports integrated graphics PIPE (pipelining), or SBA (side band addressing).

• Arbitration This category defines the method used by the chipset to arbitrate between different bus speeds and interfaces. The two most common arbitration methods are MTT (multi transaction timer) and DIA (dynamic intelligent arbiter).

• South bridge support All intel chipsets and most of the chipsets for all other manufacturers are two processor sets. In these sets the north bridge is the main chip and handles CPU and memory interfaces among other tasks, while the south bridge (or the second chip ) handles such things as the USB and IDE interfaces, the RTC (real time clock),and support for serial and parallel ports.

• Power management All intel chipsets support both the SMM (system management mode) and ACPI (advanced configuration and power interface power management standards).

Firewalls

A firewall is a set of related programs, located at a network gateway server, that protects the resources of a private network from users from other networks. (The term also implies the security policy that is used with the programs.) An enterprise with an intranet that allows its workers access to the wider Internet installs a firewall to prevent outsiders from accessing its own private data resources and for controlling what outside resources its own users have access to.

    Basically, a firewall, working closely with a router program, examines each network packet to determine whether to forward it toward its destination. A firewall also includes or works with a proxy server that makes network requests on behalf of workstation users. A firewall is often installed in a specially designated computer separate from the rest of the network so that no incoming request can get directly at private network resources.

   There are a number of firewall screening methods. A simple one is to screen requests to make sure they come from acceptable (previously identified) domain name and Internet Protocol addresses. For mobile users, firewalls allow remote access in to the private network by the use of secure log on procedures and authentication certificates.

A number of companies make firewall products. Features include logging and reporting, automatic alarms at given thresholds of attack, and a graphical user interface for controlling the firewall. Computer security borrows this term from firefighting, where it originated. In firefighting, a firewall is a barrier established to prevent the spread of fire.

Type of Memory Packages

 Type of Memory Packages :-

   Memory package is a small circuit board that contains memory chips. SIMM,DIMM,SODIMM, AND RIMM are some of the memory packages. These packages are the form factors of RAM chip. The installation of a memory depends on the form factors of a RAM. A form factor is the size and shape of the memory packages.

Single In-line Memory Module ( SIMM) :-
                  SIMM is a small circuit board desingned to hold memory chips. It contains pins for accepting data from the control circuit. These circuit boards or modules are known as apckages. There are various SIMM packages available based on the number of pins it contains. For Example there are 30 pin packages and 72 pin packages.
The capacities of a 30-pin package SIMM package are 256 Kb, 1 MB, 2 MB, 4MB,8MB,16MB RAM. It contains 2,4,0r 8 chips per module. A 30-pin SIMM package has a data bus width of 9 bits with 9- bit parity . Parity checks the accuracy of the data transmission. An odd parity and an even parity are the two modes of parity checking.
A 72-pin SIMM package has 32-bit data width with 36-bit parity . PS/2 is another term used for the 72-pin package . The capacities of a 72- pin package are 1 MB, 2MB, 4MB,8MB,16MB,32MB,64,MB,AND 128MB RAM. It contains 2,4,8,or 16 data chips permodule. FPM DRAM uses a 72-pin package.

Dual In-line Memory Module (DIMM) :-
         DIMM package is also a small circuit board that contains the memory chips. The difference between the SIMM and DIMM is that DIMM is a 168-pin package. The data of the DIMM packages are 64-bit ,72-bit, or 80-bit. A 168-pin DIMM package is available in thr SDRAM, EDO or FPM DRAM chips.

Small outline Dual In-Line Memory Module (SODIMM) :-
              Laptops and notebook systems uses this package. It is the smallest version of the DIMM. The SODIMM package has a notch at the bottom of the circuit board. This notch helps in inserting the SODIMM package is the memory socket. SODIMM packages are available with 144 and 200 pins. A 144- pin SODIMM package has 64-bit data path. The FPM DRAM and EDO RAM use this package. The 72 pins on both the sides of the package divide a 144-pin package.
A 200-pin SODIMM package has 64-bit data path. PC2 100 memory and pc2700 memory use this package. The 100 pins on both sides of the package divide a 200-pin package .

Micro DIMM :-
            Micro DIMM stands for MIcro Dual Inline Meory Module. This package is smaller than DIMM and SODIMM packages. The sub-notebook systems use these memory packages. The Micro DIMM package pins connect the memory module with the memory socket. These pins provide two communication lines for the module and the system. This Package does not have the notch at the bottom. Micro DIMM packages are vailable with 144 and 172 pins.

Rambus Inline Memory Module (RIMM) :-
         RDRAM chip uses the RIMM memory package . This package is same as the DIMM package. It only differs in the pin configuration. The high bandwidth and the low latency application use this memory package .
The RIMM package has a data storage speed of 600 MHz, 711 MHz, 800 MHz and 1066 MHz. It has 184 connecting pins. The distance between each pn in the RIMM package is 1mm. This package starts opearting from 2.5 voltage supply. The RIMM package are available in 16-bit data buses 32-bit data buses, and 64-bit data buses. The memory bandwidth of the RIMm package is up to 9.6 GB per second.

Working of RAM


WORKING OF RAM :-

        RAM stores the data until the processor is executing the current data. Once the processor finishes the current execution, RAM forwards the next data to the processor.
The processor accesses the Data from the RAM is a random order with the help of the memory cell address. The cell address contains the row number and the column number of the memory cell. When the processor receives the data, it actually receives the memory cell address of the data. The RAM controller accepts the memory cell address. The RAM controller reads the data from the cell address and then sends the data in its respective address lines. The address lines contain the transistors and the capacitors for reading the data. The control circuit reads the capacitor when the transistors opens the cell. When the capacitor is charged , the memory cell returns a bit value as 1. When the capacitor is empty, the memory cell returns the bit value as 0.
In DRAM, each cell contains a pair of transistors and capacitor. Each cell represents a single bit of data in the binary format of 0 and 1. The capacitor stores the data in the memory cell. The transistor with the help of the memory control circuit reads these memory cells.A transistor acts as a switch. It turns on when the control circuit reads the capacitor. It turns off when the capacitor is empty. The DRAM Controller refreshes the capacitor after each reading of the memory cell. DRAM refreshes automatically. access speed of RAM is 80ns to 50 NS.

Type Of RAM


   Type Of RAM :-
    
RAM is the main memory of the computer. It holds the data until the system is turned off.once the system is switched off the data is lost. There are two types of Ram , Static RAM and Dynamic RAM.

Static Random Access Memory(SRAM) :-

1) Stores data till the power is supplied
2) Uses an array of transistors for each memory cell.
3) Does not need refreshing the memory cell after each reading of the transistors.
4) Data access is faster
5) Consumes more power
6) It is Expensive.

Dynamic Random Access Memory (DRAM) :-

1) Stores data only for few milliseconds even when power is supplied.
2) Uses a single transistor and capacitor for each memory cell
3) Needs refreshing the memory cell after each reading of the capacitor
4) Data access is slower
5) Consumes less power
6) Less Expensive

Memory

  Memory is one of the functions of the brain that enables to store and remember the past events. Similarly, in Computers the term memory refers to a chip that stores data. It also enables us to retrieve the stored Data. The processor retrieves information stored in the memory for processing Data. The storage capacity of a memory depends on the type of the memory package used.

Types of Memory

Memory can be divided into two types, Volatile memory and non volatile memory. Volatile memory temporarily stores the data. It loses data as soon as the system supply is turned off. Non-volatile memory stores data permanently.It does not lose the data even if the system supply id turned off.
Further, Memory is classified into physical memory, logical memory, virtual memory and flash memory.

Two types of Physical Memory :-

RAM - Stands for Random Access Memory. It is a semiconductor-based memory where the CPU or the other hardware devices can read and write data. It temporarily stores the data and it is a volatile memory.Once the system turns off, it loses the data. As a result, Ram is used as a temporary storage area.
                         Types Of RAM :-

ROM - Stands for Read only Memory. It stores the Data permanently and it is a non volatile memory. It does not lose data even after the system turns off. As a result ROM is a permanent data storage area.

Logical Memory:-
                                 Logical memory enables the user to use large amount of memory to store data.It defines a way to organize the physical memory such as RAM and cache. This enables the operating system to arrange memory into a logical manner such as assigning a logical address. Logical address is a memory location and it is accessed by an application program. The system maps the logical address to real physical storage address.

Virtual Memory :-
                                 Virtual memory is a part of the hard disk which is used as a memory . It has a set of memory addresses and stores the instruction or the data. When the processor executes the instructions it converts the virtual memory addressed into real memory addresses. The main use of the virtual memory is to increase the address space.

Flash Memory :-
                            Flash memory is the high-density device. It is a non volatile memory. It is fast in reading and writing data. This is because it writes data in chunks or blocks. Flash memory is an electrically re-programmable device. The contents from the flash memory are erased in blocks and not in bytes. The block size can range from 256 bytes to 16 kB . Flash Memory can replace hard disk in portable computers. In this context, flash memory is available as pc card that you can plug into the PC MCIA slot.

Cache Memory :-
                                Cache memory is a small and fast memory which is placed between the CPU and RAM.It is accessed at a very high speed than the system memory. As a result, the programs which access the same data or instructions over and over run faster. The cpu does not have to transverse to the main memory to get the data . It will first access the cache to find the data.