Computer Users • Use computers for work and personal tasks. • Do not necessarily have much technical knowledge. • When they need technical help, they usually obtain it from the computer professionals. • To use computers efficiently, however, you must become computer literate and computer efficient.
Computer Literacy & Competency • understanding what a computer is and what it can do • using skills to meet information needs and improve productivity • Be able to transfer basic skills to new systems and new software. • master the computer terminology • Learn the functions of the parts of a computer system • Produce the information needed and perform the required tasks
Understanding computers • How does a computer work? • Idiot servant • Very good with a small number of tasks • Can perform excellent for a good master • what can computers do well? • Store and retrieve numbers • Add, subtract, multiply, and divide • Fast and accurate • Follow a list of instructions
Computer • Computer is an electro-mechanical (it has electronic as well as mechanical components), programmable (use as per one’s need) device that accepts data and processes it to meaningful information with a very high speed and accuracy.
Advantages & Limitations Every invention shows a number of advantages, which popularizes its use and on the other hand it lead to certain limitations also, that provide motive for inventors/ scientists for further development
Characteristics • Speed • It works with a very high speed. • Accuracy • results calculated by computer are always accurate. • Reliability • The computer is very reliable as it is always available at your service. Whenever you need it will perform its duty. • Storage • It has a capability of storing permanently. Any data stored in computer can be retrieved any time.
Characteristics • Automation • Once initiated, it will start working and work till the job finishes. • Versatility • The same computer can serve for different purposes. It means that same machine can be used for educational purpose or entertainment or diagnostics or publication, prediction etc. • Communication • With the invention of Internet technology now the computers are capable of exchanging messages, data, voice, audio, video etc. • Diligence • With the time, it never get tired. It can work for hours, days, month or years without any break.
Characteristics • No Feelings • It is emotionless. Effect of environment, users feelings or biasness do not divert or hamper its functioning. • Consistency • It is a very consistent machine. It will provide same results for same set of data whenever you instruct him for same job. • Precision • results given by computers are exact and accurate.
Limitations • Programmed by human • Being an idiot servant it is the duty of machine that it performs as per the instructions given by its master/user. • No Intelligence/No decision making power • has no intelligence, that is why it cannot take any decision unless defined by its user. • Emotionless • Computer is purely mechanical as far as its working is concerned. It is not concerned with users’ physical or mental condition. • Curtail human capabilities • It is biggest limitation of computer. People are so dependent on computer that now they need it even for small problems.
Elements of computing process • Hardware • Software • Data • People • Procedure
Plastic, metal and glass components, things you can trip over! Hardware • Processing • Components responsible for processing/calculation fall under processing hardware category. E.g. Central Processing Unit (CPU). • Memory • Storage area which is reserved for data and communicated with processing hardware comes under memory hardware category. E.g. Random Access Memory (RAM), Read Only Memory (ROM). • Input • The devices through which we can give instructions to the computer fall under this category. E.g. Keyboard, mouse.
Plastic, metal and glass components, things you can trip over! Hardware • Output • The devices through which computer provide us results after processing are known as output hardware devices. E.g. Monitor, Printer. • Storage • The devices which have the capability of storing data permanently lie on this category. E.g. Floppy, Hard Disk, CD. • Communication • The devices which enable our computer for sending or receiving messages fall under this category. E.g. Modem.
Software • Computer software or software is a collection of computer programs (set of instructions is known as computer program) and related data that provide instruction to the computer what to do and how to do. More technically, software is a set of programs, procedures, algorithms and its documentation designed/developed for a specific purpose. • Software may divide into three broad categories: • System Software • General Software • Application Software
System Software System software is computer software designed to operate the computer hardware to provide basic functionality and to provide a platform for running application software. It includes programming languages, program translators, operating systems, device drivers and utilities programs. System software is also responsible for managing hardware components, so that they can work together harmoniously.
Language • A language is a media to communicate with others. • A source and object is necessary for communication. • Object must understand the content communicated by the source.
Language Low Level Language High level Language Machine Language Procedural Languages Object-oriented languages Assembly Language Types of Languages
Low Level Languages • Machine language • It uses only two digits 0s and 1s to write an instruction • It is machine dependent, which means – programs written on one computer cannot be used on other computer unless hardware architecture is exactly same. • It is near to computer rather the user. • Assembly language • It uses mnemonics i.e. small codes which comprises of ADD, SUB, MPY, DIV, LOAD etc. for writing instructions. • It is also machine dependent
High Level Languages • High-level programming languages - uses math-like and English-like expressions to represent user ideas. • less machine-dependent • simplify programming for user (focus on user’s task not computer) • programs are portable between machines.
High Level Languages • Procedural Language (e.g. BASIC, FORTRAN, COBOL, PASCAL, C, etc.) • In procedural language, programmer specifies an explicit sequences of steps to follow to produce a result. • Object Oriented Language (Small Talk, Visual Basic, C++, JAVA etc.) • Object-oriented programming language model organized around "objects" rather than "actions" and data rather than logic. Historically, a program has been viewed as a logical procedure that takes input data, processes it, and produces output data • Object-oriented programming takes the view that what we really care about are the objects we want to manipulate rather than the logic required to manipulate them. Examples of objects range from human beings (described by name, address, and so forth) to buildings and floors (whose properties can be described and managed) down to the little widgets on your computer desktop (such as buttons and scroll bars).
Translation • Computer does not recognize high level language. To recognize it, it must be translated into machine language. • Translation changes the source code into object code in machine language. • Object code must be linked with other required codes (e.g. operating system routines, library routines) to form an executable program. • The executable program is then loaded into the computer memory to be run. Translation leads to the compilation of an executable program file (*.exe)
Object Code Source Code • Mnemonic Opcode • Symbol Assembler Translators • Assembler • Translates Assembly language program to machine language. • Translating mnemonic operation codes to their machine language equivalents • Assigning machine addresses to symbolic labels
Translators • Compiler • A compiler is defined as a computer program that is used to convert high level instructions or language into a form that can be understood by the computer. Since computer can understand only in binary numbers so a compiler is used to fill the gap otherwise it would have been difficult for a human to find info in the 0 and 1 form. • There are specific compliers for certain specific languages or tasks. Compliers can be multiple or multistage pass. The first pass can convert the high level language into a language that is closer to computer language. Then the further passes can convert it into final stage for the purpose of execution.
Linker Source File Executable Program Object File Runtime Library
Translators • Interpreter • High level instruction or language is converted into machine language by an interpreter line-by-line. • An interpreter, the high level program is executed directly. • Programmers prefer interpreters while making small sections as this saves time.
Compiler vs. Interpreter • Compiler • Converts the high level instruction into machine language. • Before execution, entire program is executed by the compiler. • List of errors is created by the compiler after the compilation process. • An independent executable file is created by the compiler. • Interpreter • Converts the high level instruction into an intermediate form • After translating the first line, it executes it and so on. • An interpreter stops translating after the first error. • Interpreter is required by an interpreted program each time.
Operating System • An OS manages and coordinates the function performed by the computer hardware, (including the CPU, input/output devices, secondary storage devices, and communication) and network equipment. • It tracks of each resource and determines that who gets what. • For large systems, the OS has even greater responsibilities and powers. It is like a traffic cop -- it makes sure that different programs and users running at the same time do not interfere with each other. The operating system is also responsible for security, ensuring that unauthorized users do not access the system.
Classification of Operating System • Multiuser: Allows two or more users to run programs at the same time. Some operating systems permit hundreds or even thousands of concurrent users. • Multiprocessing: Supports running a program on more than one CPU. • Multitasking: Allows more than one program to run concurrently. • Multithreading: Allows different parts of a single program to run concurrently. • Real Time: Responds to input instantly. General-purpose operating systems, such as DOS and UNIX, are not real-time.
Tasks of Operating System • Processor Management: This involves ensuring that all the system resources receive sufficient processes time for expected functioning as well as making sure that the processer is used to its optimum capacity. • Memory/Storage Management: Computer systems have different types of memories such as temporary (RAM, Cache, etc.) as well as permanent memories (Hard Drives, USB Drives, etc.). It is the job of an Operating System to allocate the relevant and necessary memory space to the applications & devices for efficient and optimum processing of information.
Tasks of Operating System • Device Management: Managing the inputs and outputs of various devices / peripherals is also one of the critical functions of an Operating Systems. With the help of device drivers, the OS controls flow of information with the necessary allocation of system resources to ensure correct input and output. • Application Management: As the OS manages the devices using drivers, it also manages the various applications running on a computer using different Application Program Interfaces (APIs). Based on the data received from the application through the APIs, the OS performs actions to provide the expected results.
Tasks of Operating System • User Interface: A user interface provides a consistent way of interaction between the user and the computer system. The OS acts as an engine to provide means of interaction between user and computer through the user interfaces. • GUI (Graphical User Interface) • CLI (Command Line Interface)
Device Drivers • A device driver is a component that Windows uses to provide I/O services for and interact with an underlying device, such as a modem or network adapter. Rather than access the device directly, Windows loads device drivers and calls functions in the drivers to carry out actions on the device. Drivers are hardware-dependent and operating-system-specific.
Utility Programs • Utility programsare designed to help analyze, configure, optimize or maintain a computer. A single piece of utility software is usually called a utility or tool. Utility program usually focuses on how the computer infrastructure (including the computer hardware, operating system, application software and data storage) operates.
Utility Programs • Anti-virus utilities scan for computer viruses. • Backup utilities can make a copy of all information stored on a disk, and restore either the entire disk (e.g. in an event of disk failure) or selected files (e.g. in an event of accidental deletion). • Disk checkers can scan operating hard drive. • Disk cleaners can find files that are unnecessary to computer operation, or take up considerable amounts of space. Disk cleaner helps the user to decide what to delete when their hard disk is full.
Utility Programs • Disk compression utilities can transparently compress/uncompress the contents of a disk, increasing the capacity of the disk. • Disk defragmenters can detect computer files whose contents are broken across several locations on the hard disk, and move the fragments to one location to increase efficiency. • Disk partitions can divide an individual drive into multiple logical drives, each with its own file system which can be mounted by the operating system and treated as an individual drive.
Utility Programs • File managers provide a convenient method of performing routine data management tasks, such as deleting, renaming, cataloging, un-cataloging, moving, copying, merging, generating and modifying data sets. • Screensavers were desired to prevent phosphor burn-in on CRT and plasma computer monitors by blanking the screen or filling it with moving images or patterns when the computer is not in use. Contemporary screensavers are used primarily for entertainment or security. • System monitors for monitoring resources and performance in a computer system.
General Software • Word processor • A word processor, or word processing program, does exactly what the name implies. It processes words. It also processes paragraphs, pages, and entire document. • Some examples of word processing programs include Microsoft Word, WordPerfect (Windows only), AppleWorks (Mac only), and OpenOffice.org. • Spreadsheet • A table of values arranged in rows and columns. Each value can have a predefined relationship to the other values. • Lotus 1-2-3 and Excel are the most popular spreadsheet programs.
General Software • Database Management System (DBMS) • A software package with computer programs that control the creation, maintenance, and use of a database. • A database is an integrated collection of data records, files, and other objects. • Browser • A software application for retrieving, presenting, and traversing information resources on the World Wide Web. • The major web browsers are Firefox, Google Chrome, Internet Explorer, Opera, and Safari. • Email • A method of exchanging digital messages from an author to one or more recipients.
Application Software • Enterprise resource planning (ERP) • It integrate internal and external management information across an entire organization, embracing finance/accounting, manufacturing, sales and service, customer relationship management, etc. • Their purpose is to facilitate the flow of information between all business functions inside the boundaries of the organization and manage the connections to outside stakeholders.
Characteristics • An integrated system that operates in real time (or next to real time), without relying on periodic updates. • A common database, which supports all applications. • A consistent look and feel throughout each module. • Installation of the system without elaborate application/data integration by the Information Technology (IT) department.
Examples • Finance/Accounting • Human resources • Manufacturing • Supply chain management • Project management • Customer relationship management • Data services • Access control
Analog Computer • Uses continuous physical phenomena such as electrical, mechanical or hydraulic quantities to model the problem being solved • For example: • Thermometer • Speedometer • Petrol Pump Meter • Multimeter • Slide Rule
Digital Computer • Performs calculations and logical operations with quantities represented as digits, usually in binary system • Bit – (Two-state: 0,1/Present, Absent etc. • 8 Bits = 1 Byte • Can represent 256 different characters • Called Single-Byte-Character-Set (SBCS) • Standard for this representation is ASCII (American Standard Code for Information Interchange)
Hybrid Computers • A combination of computers those are capable of inputting and outputting in both digital and analog signals • It accepts a continuously varying input, which is then converted into discrete values in digital processing • For example, computers used in hospital for measuring heart beat of a patient. • Hybrid machines are generally used in scientific applications or in controlling industrial processes.
Personal Computer/Microcomputer • Mini Computers • Mainframe Computers • Super Computers • Workstations • Server
Personal Computer/Microcomputer • CPU: Microprocessor • Read only Memory (ROM) • Random Access Memory (RAM) • IBM and IBM Compatible • Apple Macintosh: Multimedia application • Multiuser • Notebook, laptop, palmtop, PDAs, Pocket computer