You are on page 1of 19

What is computer?

In short computer can be defined as, An electronic device for storing and processing data, typically in binary form, according to instructions given to it in a
variable program.

Computer is an electronic device designed to accept data, perform prescribed mathematical and logical operations at high speed, and display the results of these operations. 1) It accepts data or instructions by way of input, 2) It stores data, 3) It can process data as required by the user, 4) It gives results in the form of output, and 5) It controls all operations inside a computer. We discuss below each of these Computer operations What is Block diagram? Block diagram is a diagram of a system, in which the principal parts or functions are represented by blocks connected by lines that show the relationships of the blocks. 1. Input: This is the process of entering data and programs in to the computer system. You should know that computer is an electronic machine like any other machine which takes as inputs raw data and performs some processing giving out processed data. Therefore, the input unit takes data from us to the computer in an organized manner for processing. 2. Storage: The process of saving data and instructions permanently is known as storage. Data has to be fed into the system before the actual processing starts. It is

because the processing speed of Central Processing Unit (CPU) is so fast that the data has to be provided to CPU with the same speed. Therefore the data is first stored in the storage unit for faster access and processing. This storage unit or the primary storage of the computer system is designed to do the above functionality. It provides space for storing data and instructions. The storage unit performs the following major functions: All data and instructions are stored here before and after processing. Intermediate results of processing are also stored here.

3. Processing: The task of performing operations like arithmetic and logical operations is called processing. The Central Processing Unit (CPU) takes data and instructions from the storage unit and makes all sorts of calculations based on the instructions given and the type of data provided. It is then sent back to the storage unit. 4. Output: This is the process of producing results from the data for getting useful information. Similarly the output produced by the computer after processing must also be kept somewhere inside the computer before being given to you in human readable form. Again the output is also stored inside the computer for further processing. 5. Control: The manner how instructions are executed and the above operations are performed. Controlling of all operations like input, processing and output are performed by control unit. It takes care of step by step processing of all operations inside the computer. FUNCTIONAL UNITS In order to carry out the operations mentioned in the previous section the computer allocates the task between its various functional units. The computer system is divided into three separate units for its operation. They are 1) Arithmetic logical unit 2) Control unit. 3) Central processing unit. Arithmetic Logical Unit (ALU) Logical Unit

Logical Unit: After you enter data through the input device it is stored in the primary storage unit. The actual processing of the data and instruction are performed by Arithmetic Logical Unit. The major operations performed by the ALU are addition, subtraction, multiplication, division, logic and comparison. Data is transferred to ALU from storage unit when required. After processing the output is returned back to storage unit for further processing or getting stored.

Control Unit (CU) The next component of computer is the Control Unit, which acts like the supervisor seeing that things are done in proper fashion. Control Unit is responsible for co coordinating various operations using time signal. The control unit determines the sequence in which computer programs and instructions are executed. Things like processing of programs stored in the main memory, interpretation of the instructions and issuing of signals for other units of the computer to execute them. It also acts as a switch board operator when several users access the computer simultaneously. Thereby it coordinates the activities of computers peripheral equipment as they perform the input and output. Central Processing Unit (CPU) The ALU and the CU of a computer system are jointly known as the central processing unit. You may call CPU as the brain of any computer system. It is just like brain that takes all major decisions, makes all sorts of calculations and directs different parts of the computer functions by activating and controlling the operations. What are the Components of computer system? Computer can be divided into two main categories: Hardware and Software. Hardware - A generic term used to describe any component of a computer system with a physical presence and which can, therefore, been seen and touched. Hardware components are often categorized as being input, output, storage or processing components. Devices which are not an integral part of the CPU are referred to as being peripherals.

Peripherals are usually used for input, storage or output (such as a hard disk, keyboard or printer). A device does not necessarily have to be outside the same physical box as the CPU. The best example of this is the hard disk, which is a peripheral even though it is not usually housed within the main case.

Fig 1: The main hardware components of a computer system

Input devices are hardware devices which take information from the user of the computer system, convert it into electrical signals and transmit it to the processor. The primary function of input devices is to allow humans to interact with the computer system. For instance a mouse allows the user to control the movement of the pointer (a common element in user interface design). Output devices take data from the computer system and convert it to a form that can be interpreted by humans. For instance a monitor creates a visual electronic display to output information created by the processor to the user.

Below we discuss the variety of peripheral devices used for computer input and output. Input Devices : a) b) c) d) e) f) g) h) i) j) Graphics Tablets Cameras Video Capture Hardware Trackballs Barcode reader Digital camera Gamepad Joystick Keyboard Microphone

k) l) m) n) o) p) q) r)

MIDI keyboard Mouse (pointing device) Scanner Webcam Touchpad Pen Input Microphone Electronic Whiteboard

OUTPUT DEVICES: 1. 2. 3. 4. 5. 6. 7. Monitor Printers (all types) Plotters Projector LCD Projection Panels Computer Output Microfilm (COM) Speaker(s)

Processing devices are the components responsible for the processing of information within the computer system. This includes devices such as the CPU, memory and motherboard. Storage devices are components which allow data to be stored within a computer system. This includes devices such as hard disk drives and compact disk drives. Software - A set of instructions, stored digitally within the computer's memory, which tells the computer system what to do. Software, is another word for programs which are still on the computer and cannot be touched Software components of a computer system have no physical presence; they are stored in digital form within computer memory. There are different categories of software, including system software, utilities and applications software. Software can also be described as being either generic or bespoke. System software is the software used to manage and control the hardware components and which allow interaction between the hardware and the other types of software. The most obvious type of system software is the computer's operating system but device drivers are also included within this category.

Utility software is software such as anti-virus software, firewalls, disk defragmenters and so on which helps to maintain and protect the computer system but does not directly interface with the hardware. Applications software (also known as 'apps') are designed to allow the user of the system complete a specific task or set of tasks. They include programs such as web browsers, office software, games and so on. They are usually the reason you bought the computer system in the first place and aren't concerned with the management or maintenance of the system itself. Generic software Any individual software package, whichever of the above types it falls into, can be either generic (or 'off-the-shelf') or it can be bespoke (custom-built). Generic software is mass produced with the intention that it will be used by a wide variety of different users in a range of different situations. Bespoke software is created for a specific purpose which will be used in a known environment. Generations of Computers Using size and features as the bases, computers are classified into various generations. These generations of computers are discussed below:
FIRST GENERATION The first generation computers were bulky in size. They were able to execute hundreds of instructions per second and were expensive as well. They used vacuum tubes as their main components. Machine language is a first generation language, for example EDVAC (Electronic Discrete Variable Automatic Computer), UNIVAC (Universal Automatic Computer) etc.
SECOND GENERATION The second-generation computers were smaller in size as compared to the first generation computers. These were capable of executing thousands of instructions per second, with a transistor as its main component. Assembly language is the second generation language in which programs were written using mnemonic codes, for example, PDP (Programmed data processor), PDP1 etc.

THIRD GENERATION
The third generation computers were more advanced and used integrated circuits. These computers contained thousands of components per circuit. They were cheaper than second-generation computers. The languages used in this generation were BASIC, COBOL etc. for example, IBM 307 Series, PDP II etc.

FOURTH GENERATION
The fourth generation computers used complex circuits like the large-scale integrated circuits called microprocessors or chips, which surprisingly cost less than the third generation computers. These computers were able to execute millions of instructions per second. The languages used in this generation are C++, SQL etc. for example, CRAY 2, IBM 3090/600 Series.

FIFTH GENERATION
These computers work on artificial languages (AI) like LISP, PROLOG etc. They use super/ultra large-scale integrated circuits, which is also called parallel processing method. They execute billions of instructions per second, for example, Laptops, Palmtops; PDA (Personal Digital Assistant) etc. Different kinds of languages emphasize different parts about the problem, and so are better at describing different aspects of the solution or even different kinds of problems and solutions. Computer Science is ever evolving, so there is continual evolution of the concepts we need to use and the notations for describing these concepts. Operational languages, for example, express how something is achieved, and makes the reader figure out what is being achieved. Declarative languages express what must be achieved and make the system work out how to achieve it. The earliest languages had few restrictions, so they were very powerful, but turned out to be very dangerous to use. After a while, people developed languages that were much safer to use, but there were complaints about their lack of power. Nowadays, we see languages that are both safe and powerful. Sometimes we have to use assembly language (Low-Level Language, LLL) because there is just no other reasonable way of telling the computer what it must do. However, most programming is done in High-Level Languages (HLLs) because of productivity. It is usually easier, or more cost-effective, to use a HLL. Some of the reasons for this are: Easy to write: Useful concepts and facilities, relevant to application Easy to read: For reuse, maintenance, enhancement etc. Portability: Other compiler/toolset suppliers, users, computers - standards Error detection and reporting

COMPUTER LANGUAGES
The computer performs its functions based on the instructions given by the user. The set of such instructions written for a particular task is known as a computer program. Program is the set of instructions that tells the computer how to process the data, into the form desired by the user. The language in which a computer program is written is known as programming language. The programming languages are classified as Low- level language and High- level language.

Low- level language is further classified as Machine language and Assembly language. Machine language is expressed in terms of binary numbers i.e. 0 and 1 as the processor understands binary numbers only. However, it is difficult to read and write the program in terms of 0s and 1s. The machine language code is further simplified by converting it to the code called op code. The op code depends upon the type of processor. The program written in the op code is known as Assembly language code. During the run time, it is necessary to convert the op code into machine language so that the processor will understand and process the code. The internal program that translates op code to machine code is known as Assembler. Some examples of Assembler are Microsoft Assembler (MASM), Z-80, 8085, 8086 etc. The Assembler for each processor is different. Usage of the Assembly language requires knowledge of the Assembly la nguage and computer hardware. It is more convenient to write a program in a High level language, which comprises of instructions in simple English. Examples of High level language are BASIC, FORTRAN, and COBOL etc. A compiler is the internal program that translates High level language to Machine language.
Software' is another name for program. In most cases, the terms software and program are interchangeable. There are two types of software - system software and application/ utility software. Application software is the end user software. The programs written under application software are designed for general purpose and special purpose applications. An example of application software is Microsoft Internet Explorer. System Software enables application software to interact with the computer hardware. System software is the background software that helps the computer to manage its internal resources. The most important system software is the operating system. The system software performs impor tant tasks such as running the program, storing data, processing data etc. Windows XP is an example of system software.

The computer works on either batch processing or time-sharing basis. Batch Processing: In batch processing, the computer acts as a s tand-alone unit. As such, it is available for a single user. Therefore, a number of programs can be executed simultaneously. They have to stand in queue.

Batch Processing Time-sharing: Unlike batch processing, time sharing offers simultaneous usage of computer. The computer is provided with multiple terminals from which the system can be accessed simultaneously by a number of users.

Time Sharing

Storage devices
Storage Devices are the data storage devices that are used in the computers to store the data. The computer has many types of data storage devices. Some of them can be classified as the removable data Storage Devices and the others as the non removable data Storage Devices. The memory is of two types ; one is the primary memory and the other one is the secondary memory. The primary memory is the volatile memory and the secondary memory is the non volatile memory. The volatile memory is the kind of the memory that is erasable and the non volatile memory is the one where in the contents cannot be erased. Basically when we talk about the data storage devices it is generally assumed to be the secondary memory. The secondary memory is used to store the data permanently in the computer. The secondary storage devices are usually as follows: hard disk drives this is the most common type of storage device that is used in almost

all the computer systems. The other ones include the floppy disk drives, the CD ROM, and the DVD ROM. The flash memory, the USB data card etc. Examples of storage devices A floppy disk is a data storage medium that is composed of a disk of thin, flexible floppy) magnetic storage medium encased in squarer rectangular plastic shell. Floppy disks are read and written by a floppy disk drive. Any use where small files such as word processing, small spreadsheets and databases need to be moved from one computer to another. Useful to backup small data files. A hard disk drive is the device used to store large amounts of digital information in computers and related equipment like iPods and games consoles such as the Xbox 360 and PS3. Hard disk drives are used to store operating systems, software and working data. These are suitable for any application which requires very fast access to data for both reading and writing to. However, Hard disk drives may not be suitable for applications which need portability. Almost all computers used a fixed hard disc. Used for on-line and real time processes requiring direct access. Used in file servers for computer networks to store large amount of data. Portable hard discs are good fun because you can carry data about all over the place and transfer information, programs, pictures, etc between computers. Magnetic tape has been used for data storage for over 50 years. When storing large amounts of data, tape can be substantially less expensive than disk or other data storage options. Tape storage has always been used with large computer systems. Modern usage is primarily as a high capacity medium for backups and archives.

Optical backing storage media such as CDs and DVDs


CDs tend to be used for large files (but smaller than 1Gb) which are too big for a floppy disc to hold such as music and general animation. DVDs are used to hold very large files (several Gb) such as movie films. Both CDs and DVDs are portable i.e. they can be transported from one computer to another. Both can be used to store computer data. CD ROM/DVD ROM Applications which require the prevention of deletion of data, accidental or otherwise. CDs used by software companies for distributing software programs and data; by Music companies for distributing music albums and by book publishers for distributing encyclopaedias, reference books etc. DVDs used by film distributors. CD R/DVD R Applications which require a single burning of data, e.g. CDs - recording of music downloads from the Internet, recording of music from MP3 format, recording of data for archiving or backup purposes. DVDs recording of film movies and television programs. CD RW/DVD RW Applications which require the updating of information and ability to record over old data. Not suitable for music recording but is very useful for keeping generations of files. DVDs have between five and ten times the capacity of CDs.

USB flash drives are typically removable and rewritable, much smaller than a floppy disk. Storage capacities typically range from 64 MB to 64 GB. USB flash drives offer potential advantages over other portable storage devices, particularly the floppy disk. They have a more compact shape, operate faster, hold much more data, have a more durable design, and operate more reliably due to their lack of moving parts. Flash drives are widely used to transport files and backup data from computer to computer.

A me mory card or flash memory card is a solid-state electronic flash memory data storage device used with digital cameras, handheld and Mobile computers, telephones, music players, video game consoles, and other electronics. Nowadays, most new PCs have built- in slots for a variety of memory cards; Memory Stick, Compact Flash, SD, etc. Some digital gadgets support more than one memory card to ensure compatibility.
INTRODUCTION TO COMPUTER OPERATING SYSTEM

An operating system (sometimes abbreviated as "OS")is the program that, after being initially loaded into the computer by a boot program, manages all the other programs in a computer. An operating system is a program that acts as an interface between a user of a computer and the computer hardware. The application programs make use of the operating system by making requests for services through a defined application program interface (API). In addition, users can interact directly with the operating system through a user interface such as a command language (shell CMD.EXE or Terminal) or graphical user interface (GUI). An operating system is an important part of almost every computer system. A computer system can roughly be divided into three components: The hardware (memory, CPU, arithmetic-logic unit, various bulk storage, I/O, peripheral devices) Systems programs (operating system, compilers, editors, loaders, utilities) Application programs (database systems, business programs, GUIs, IDEs)

Function of operating system


An operating system is a group of computer programs that coordinates all the activities among computer hardware devices. It is the first program loaded into the computer by a boot program and remains in memory at all times.

Functions of an operating system


The basic functions of an operating system are: i. ii. iii. iv. v. Booting the computer Performs basic computer tasks eg managing the various peripheral devices eg mouse, keyboard Provides a user interface, e.g. command line, graphical user interface (GUI) Handles system resources such as computer's memory and sharing of the central processing unit (CPU) time by various applications or peripheral devices Provides file management which refers to the way that the operating system manipulates, stores, retrieves and saves data.

Booting the computer


The process of starting or restarting the computer is known as booting. A cold boot is when you turn on a computer that has been turned off completely. A warm boot is the process of using the operating system to restart the computer.

Performs basic computer tasks


The operating system performs basic computer tasks, such as managing the various peripheral devices such as the mouse, keyboard and printers. For example, most operating systems now are plug and play which means a device such as a printer will automatically be detected and configured without any user intervention.

Provides a user interface


A user interacts with software through the user interface. The two main types of user interfaces are: command line and a graphical user interface (GUI). With a command line interface, the user interacts with the operating system by typing commands to perform specific tasks. An example of a command line interface is DOS (disk operating system). With a graphical user interface, the user interacts with the operating system by using a mouse to access windows, icons, and menus. An example of a graphical user interface is Windows Vista or Windows 7. The operating system is responsible for providing a consistent application program interface (API) which is important as it allows a software developer to write an application on one computer and know that it will run on another computer of the same type even if the amount of memory or amount of storage is different on the two machines.

Handles system resources


The operating system also handles system resources such as the computer's memory and sharing of the central processing unit (CPU) time by various applications or peripheral devices. Programs and input methods are constantly competing for the attention of the CPU and demand memory, storage and input/output bandwidth. The operating system ensures that each application gets the necessary resources it needs in order to maximize the functionality of the overall system.

Provides file management


The operating system also handles the organization and tracking of files and directories (folders) saved or retrieved from a computer disk. The file management system allows the user to perform such tasks as creating files and directories, renaming files, coping and moving files, and deleting files. The operating system keeps track of where files are located on the hard drive through the type of file system. The type two main types of file system are File Allocation table (FAT) or New Technology File system (NTFS).

Types of file system


File Allocation table (FAT) New Technology file system (NTFS)

File Allocation table (FAT) uses the file allocation table which records, which clusters are used and unused and where files are located within the clusters. NTFS is a file system introduced by Microsoft and it has a number of advantages over the previous file system, named FAT32 (File Allocation Table). One major advantage of NTFS is that it includes features to improve reliability. For example, the new technology file system includes fault tolerance, which automatically repairs hard drive errors without displaying error messages. It also keeps detailed transaction logs, which tracks hard drive errors. This can help prevent hard disk failures and makes it possible to recover files if the hard drive does fail. NTFS also allows permissions (such as read, write, and execute) to be set for individual directories and files.

Types of operating system


An operating system (OS) is a collection of software that manages computer hardware resources and provides common services for computer programs. The operating system is a vital component of the system software in a computer system. Application programs usually require an operating system to function. Types of Operating System:

Real-time
A real-time operating system is a multitasking operating system that aims at executing real-time applications. Real-time operating systems often use specialized scheduling algorithms so that they can achieve a deterministic nature of behavior. The main objective of real-time operating systems is their quick and predictable response to events. They have an event-driven or time-sharing design and often aspects of both. An event-driven system switches between tasks based on their priorities or external events while time-sharing operating systems switch tasks based on clock interrupts.

Multi-user
A multi-user operating system allows multiple users to access a computer system at the same time. Time sharing systems and Internet servers can be classified as multi-user systems as they enable multiple-user access to a computer through the sharing of time. Single-user operating systems have only one user but may allow multiple programs to run at the same time.

Multi-tasking vs. single-tasking


A multi-tasking operating system allows more than one program to be running at a time, from the point of view of human time scales. A single-tasking system has only one running program. Multi-tasking can be of two types: pre-emptive and co-operative. In pre-emptive multitasking, the operating system slices the CPU time and dedicates one slot to each of the programs. Unix-like operating systems such as Solaris and Linux support pre-emptive multitasking, as does Amiga OS. Cooperative multitasking is achieved by relying on each process to give time to the other processes in a defined manner. 16-bit versions of Microsoft Windows used cooperative multi-tasking. 32-bit versions of both Windows NT and Win9x used pre-emptive multi-tasking. Mac OS prior to OS X used to support cooperative multitasking.

Distributed
A distributed operating system manages a group of independent computers and makes them appear to be a single computer. The development of networked computers that could be linked and communicate with each other gave rise to distributed computing. Distributed computations are carried out on more than one machine. When computers in a group work in cooperation, they make a distributed system.

Embedded
Embedded operating systems are designed to be used in embedded computer systems. They are designed to operate on small machines like PDAs with less autonomy. They are able to operate with a limited number of resources. They are very compact and extremely efficient by design. Windows CE and Minix 3 are some examples of embedded operating systems. Component of Computer Operating System: The components of an operating system all exist in order to make the different parts of a computer work together. All user software needs to go through the operating system in order to use any of the hardware, whether it is as simple as a mouse or keyboard or as complex as an Internet component.

Kernel
With the aid of the firmware and device drivers, the kernel provides the most basic level of control over all of the computer's hardware devices. It manages memory access for programs in the RAM, it determines which programs get access to which hardware resources, it sets up or resets the CPU's operating states for optimal operation at all times, and it organizes the data for long-term non-volatile storage with file systems on such media as disks, tapes, flash memory, etc.

Program execution
The operating system provides an interface between an application program and the computer hardware, so that an application program can interact with the hardware only by obeying rules and procedures programmed into the operating system. The operating system is also a set of services which simplify development and execution of application programs. Executing an application program involves the creation of a process by the operating system kernel which assigns memory space and other resources, establishes a priority for the process in multi-tasking systems, loads program binary code into memory, and initiates execution of the application program which then interacts with the user and with hardware devices.

Interrupts
Interrupts are central to operating systems, as they provide an efficient way for the operating system to interact with and react to its environment. The alternative having the operating system "watch" the various sources of input for events (polling) that require action can be found in older systems with very small stacks (50 or 60 bytes) but are unusual in modern systems with large stacks. Interrupt-based programming is directly supported by most modern CPUs. Interrupts provide a computer with a way of automatically saving local register contexts, and running specific code in response to events. Even very basic computers support hardware interrupts, and allow the programmer to specify code which may be run when that event takes place.

Modes
Modern CPUs support multiple modes of operation. CPUs with this capability use at least two modes: protected mode and supervisor mode. The supervisor mode is used by the operating system's kernel for low level tasks that need unrestricted access to hardware, such as controlling how memory is written and erased, and communication with devices like graphics cards. Protected mode, in contrast, is used for almost everything else. Applications operate within protected mode, and can only use hardware by communicating with the kernel, which controls everything in supervisor mode. CPUs might have other modes similar to protected mode as well, such as the virtual modes in order to emulate older processor types, such as 16-bit processors on a 32-bit one, or 32-bit processors on a 64-bit one.

Memory management
Among other things, a multiprogramming operating system kernel must be responsible for managing all system memory which is currently in use by programs. This ensures that a program does not interfere with memory already in use by another program. Since programs time share, each program must have independent access to memory

Virtual memory
The use of virtual memory addressing (such as paging or segmentation) means that the kernel can choose what memory each program may use at any given time, allowing the operating system to use the same memory locations for multiple tasks. If a program tries to access memory that isn't in its current range of accessible memory, but nonetheless has been allocated to it, the kernel will be interrupted in the same way as it would if the program were to exceed its allocated memory. (See section on memory management.) Under UNIX this kind of interrupt is referred to as a page fault.

Multitasking
Multitasking refers to the running of multiple independent computer programs on the same computer; giving the appearance that it is performing the tasks at the same time. Since most computers can do at most one or two things at one time, this is generally done via time-sharing, which means that each program uses a share of the computer's time to execute.

Disk access and file systems


Access to data stored on disks is a central feature of all operating systems. Computers store data on disks using files, which are structured in specific ways in order to allow for faster access, higher reliability, and to make better use out of the drive's available space. The specific way in which files are stored on a disk is called a file system, and enables files to have names and attributes. It also allows them to be stored in a hierarchy of directories or folders arranged in a directory tree.

Networking
Currently most operating systems support a variety of networking protocols, hardware, and applications for using them. This means that computers running dissimilar operating systems can participate in a common network for sharing resources such as computing, files, printers, and scanners using either wired or wireless connections. Networks can essentially allow a computer's operating system to access the resources of a remote computer to support the same functions as it could if those resources were connected directly to the local

computer. This includes everything from simple communication, to using networked file systems or even sharing another computer's graphics or sound hardware. Some network services allow the resources of a computer to be accessed transparently, such as SSH which allows networked users direct access to a computer's command line interface.

Security
A computer being secure depends on a number of technologies working properly. A modern operating system provides access to a number of resources, which are available to software running on the system, and to external devices like networks via the kernel. The operating system must be capable of distinguishing between requests which should be allowed to be processed, and others which should not be processed. While some systems may simply distinguish between "privileged" and "non-privileged", systems commonly have a form of requester identity, such as a user name. To establish identity there may be a process of authentication

User interface
Every computer that is to be operated by an individual requires a user interface. The user interface is usually referred to as a shell and is essential if human interaction is to be supported. The user interface views the directory structure and requests services from the operating system that will acquire data from input hardware devices, such as a keyboard, mouse or credit card reader, and requests operating system services to display prompts, status messages and such on output hardware devices, such as a video monitor or printer. The two most common forms of a user interface have historically been the command-line interface, where computer commands are typed out line-by-line, and the graphical user interface, where a visual environment (most commonly a WIMP) is present.

Graphical user interfaces


Most of the modern computer systems support graphical user interfaces (GUI), and often include them. In some computer systems, such as the original implementation of Mac OS, the GUI is integrated into the kernel. While technically a graphical user interface is not an operating system service, incorporating support for one into the operating system kernel can allow the GUI to be more responsive by reducing the number of context switches required for the GUI to perform its output functions. Other operating systems are modular, separating the graphics subsystem from the kernel and the Operating System. In the 1980s UNIX, VMS and many others had operating systems that were built this way. Linux and Mac OS X are also built this way. Modern releases of Microsoft Windows such as Windows Vista implement a graphics subsystem that is mostly in user-space; however the graphics drawing routines of versions between Windows NT 4.0 and Windows Server 2003 exist mostly in kernel space. Windows 9x had very little distinction between the interface and the kernel.

An Introduction to Database Management Systems


A database is a collection of related files that are usually integrated, linked or cross-referenced to one another. The advantage of a database is that data and records contained in different files can be easily organized and retrieved using specialized database management software called a database management system (DBMS) or database manager.

Data:
Data is raw fact or figures or entity. When activities in the organization takes place, the effect of these activities need to be recorded which is known as Data.

Information:
Processed data is called information The purpose of data processing is to generate the information required for carrying out the business activities.

Types of Data Base Management System


There are four main types of database management systems (DBMS) and these are based upon their management of database structures. In other words, the types of DBMS are entirely dependent upon how the database is structured by that particular DBMS.
Hierarchical DBMS A DBMS is said to be hierarchical if the relationships among data in the database are established in such a way that one data item is present as the subordinate of another one or a sub unit. Here subordinate means that items have "parent-child" relationships among them. Direct relationships exist between any two records that are stored consecutively. The data structure "tree" is followed by the DBMS to structure the database. No backward movement is possible/allowed in the hierarchical database. The hierarchical data model was developed by IBM in 1968 and introduced in information management systems. This model is like a structure of a tree with the records forming the nodes and fields forming the branches of the tree. In the hierarchical model, records are linked in the form of an organization chart. A tree structure may establish one-to-many relationship. Network DBMS A DBMS is said to be a Network DBMS if the relationships among data in the database are of type many-tomany. The relationships among many-to-many appear in the form of a network. Thus the structure of a network database is extremely complicated because of these many-to-many relationships in which one record can be used as a key of the entire database. A network database is structured in the form of a graph that is also a data structure. Though the structure of such a DBMS is highly complicated however it has two basic elements i.e. records and sets to designate many-to-many relationships. Mainly high-level languages such as Pascal, COBOL and FORTRAN etc. were used to implement the records and set structures. Relational DBMS A DBMS is said to be a Relational DBMS or RDBMS if the database relationships are treated in the form of a table. there are three keys on relational DBMS 1)relation 2)domain 3)attributes. A network means it contains a fundamental constructs sets or records. Sets contains one to many relationship, records contains fields statically table that is composed of rows and columns is used to organize the database and its structure and is actually a two dimension array in the computer memory. A number of RDBMSs are available; some popular examples are Oracle, Sybase, Ingress, Informix, Microsoft SQL Server, and Microsoft Access.

Object-Oriented DBMS Able to handle many new data types, including graphics, photographs, audio, and video, object-oriented databases represent a significant advance over their other database cousins. Hierarchical and network databases are all designed to handle structured data; that is, data that fits nicely into fields, rows, and columns. They are useful for handling small snippets of information such as names, addresses, zip codes, product numbers, and any kind of statistic or number you can think of. On the other hand, an object-oriented database can be used to store data from a variety of media sources, such as photographs and text, and pro duce work, as output, in a multimedia format.

The Advantages of a DBMS


Improved availability: One of the principle advantages of a DBMS is that the same information can be made available to different users. Minimized redundancy: The data in a DBMS is more concise because, as a general rule, the information in it appears just once. This reduces data redundancy, or in other words, the need to repeat the same data over and over again. Minimizing redundancy can therefore significantly reduce the cost of storing information on hard drives and other storage devices. In contrast, data fields are commonly repeated in multiple files when a file management system is used. Accuracy: Accurate, consistent, and up-to-date data is a sign of data integrity. DBMSs foster data integrity because updates and changes to the data only have to be made in one place. The chances of making a mistake are higher if you are required to change the same data in several different places than if you only have to make the change in one place. Program and file consistency: Using a database management system, file formats and system programs are standardized. This makes the data files easier to maintain because the same rules and guidelines apply across all types of data. The level of consistency across files and programs also makes it easier to manage data when multiple programmers are involved. User-friendly: Data is easier to access and manipulate with a DBMS than without it. In most cases, DBMSs also reduce the reliance of individual users on computer specialists to meet their data needs. Improved security: As stated earlier, DBMSs allow multiple users to access the same data resources. This capability is generally viewed as a benefit, but there are potential risks for the organization. Some sources of information should be protected or secured and only viewed by select individuals. Through the use of passwords, database management systems can be used to restrict data access to only those who should see it.

The Disadvantages of a DBMS


There are basically two major downsides to using DBMSs. One of these is cost, and the other the threat to data security.

Cost: Implementing a DBMS system can be expensive and time-consuming, especially in large organizations. Training requirements alone can be quite costly. Security: Even with safeguards in place, it may be possible for some unauthorized users to access the database. In general, database access is an all or nothing proposition. Once an unauthorized user gets into the database, they have access to all the files, not just a few. Depending on the nature of the data involved, these breaches in security can also pose a threat to individual privacy. Steps should also be taken to regularly make backup copies of the database files and store them because of the possibility of fires and earthquakes that might destroy the system.

Introduction to FOXPRO
FoxPro was a text-based procedurally oriented programming language and DBMS, originally published by Fox Software and later by Microsoft, for MS-DOS, Windows, Macintosh, and UNIX. The final published release of FoxPro was 2.6, after which the development has continued under Visual FoxPro. Although FoxPro is a Database Management System (DBMS) and it does support relationships between tables, it is not considered a Relational Database Management System (RDBMS), lacking transactional processing.

Word Processing, Spread Sheets and Presentations What is word processing?

You might also like