SYSTEM SOFTWARE The user interacts primarily with application

Transcription

SYSTEM SOFTWARE The user interacts primarily with application
SYSTEM SOFTWARE
The user interacts primarily with application software. System software enables the application
software to interact with the computer hardware. System software is “background” software that
helps the computer manage its own internal resources. System software is not a single program;
rather it is a collection of programs • Operating systems are programs that coordinate computer resources, provide an interface
between users and the computer, and run applications. Windows XP and the Mac OS X are two
of the best known operating systems for today’s microcomputer users.
• Utilities, also known as service programs, perform specific tasks related to managing
computer resources. For example, the Windows utility called Disk Defragmenter locates and
eliminates unnecessary file fragments and rearranges files and unused disk space to optimize
computer operations.
• Device drivers are specialized programs designed to allow particular input or output devices to
communicate with the rest of the computer system.
EDITORS
A text editor is a tool that allows a user to create and revise documents in a computer.
TYPES OF TEXT EDITORS
Depending on how editing is performed, and the type of output that can be generated, editors can
be broadly classified as 1. Line Editors - During original creation lines of text are recognised and delimited by endof-line markers, and during subsequent revision, the line must be explicitly specified by
line number or by some pattern context. eg. edlin editor in early MS-DOS systems.
2. Stream Editors - The idea here is similar to line editor, but the entire text is treated as a
single stream of characters. Hence the location for revision cannot be specified using line
numbers. Locations for revision are either specified by explicit positioning or by using
pattern context. eg. sed in Unix/Linux.
Line editors and stream editors are suitable for text-only documents.
3. Screen Editors - These allow the document to be viewed and operated upon as a two
dimensional plane, of which a portion may be displayed at a time. Any portion may be
specified for display and location for revision can be specified anywhere within the
displayed portion. eg. vi, emacs, etc.
4. Word Processors - Provides additional features to basic screen editors. Usually support
non-textual contents and choice of fonts, style, etc.
5. Structure Editors - These are editors for specific types of documents, so that the editor
recognises the structure/syntax of the document being prepared and helps in maintaining
that structure/syntax.
ASSEMBLERS
There are two main classes of programming languages: high level (e.g., C, Pascal) and low level.
Assembly Language is a low level programming language. Programmers code symbolic
instructions, each of which generates machine instructions.
An Assembler is a program that accepts as input an assembly language program (source) and
produces its machine language equivalent (object code) along with the information for the
loader.
Assembly language program
Assembler
Linker
EXE
Figure - Executable program generation from an assembly source code
Advantages of coding in assembly language are:
 Provides more control over handling particular hardware components
 May generate smaller, more compact executable modules
 Often results in faster execution
Disadvantages:
 Not portable
 More complex
 Requires understanding of hardware details (interfaces)
An Assembler does the following
1. Generate machine instructions
- evaluate the mnemonics to produce their machine code
- evaluate the symbols, literals, addresses to produce their equivalent machine
addresses
- convert the data constants into their machine representations
2. Process pseudo operations
COMPILERS
A compiler is a special program that processes statements written in a particular programming
language and turns them into machine language or "code" that a computer's processor uses.
A compiler is a computer program (or set of programs) that transforms source code written in
a programming language(the source language) into another computer language (the target
language, often having a binary form known as object code). The most common reason for
wanting to transform source code is to create an executable program.
A compiler is likely to perform many or all of the following operations: lexical
analysis, preprocessing, parsing, semantic analysis (Syntax-directed translation), code
generation, and code optimization.
INTERPRETER
It is a program that executes instructions written in a high-level language. There are two ways
to run programs written in a high-level language. The most common is to compile the program;
the other method is to pass the program through an interpreter.
An interpreter translates high-level instructions into an intermediate form, which
it then executes. In contrast, a compiler translates high-level instructions directly into machine
language. Compiled programs generally run faster than interpreted programs. The advantage of
an interpreter, however, is that it does not need to go through the compilation stage during which
machine instructions are generated. This process can be time-consuming if the program is long.
The interpreter, on the other hand, can immediately execute high-level programs. For this reason,
interpreters are sometimes used during the development of a program.
OPERATING SYSTEMS (OS)
Definition – Operating System coordinates resources, provide an interface between users and the
computer, and run programs.
Features of DOS
MS DOS is the basic operating system with it you can do all the operation like –




create a text file
edit the file
save it your desired drive
connect to a DHCP (Dynamic Host Configuration Protocol) enabled internet connection
Features of Windows
Basic Elements:





Desktop
Taskbar
Windows Explorer
Starting & Shutting Down of Windows
File Management with Windows Explorer
1) Searching for Files
2) Creating Folder Directories
3) Saving Files
4) Copying Files
5) Moving Files
6) Deleting Files
7) Selecting Files and Folders
8) Dragging files and folders
9) Sending Files to a USB Pen Drive
10) Creating a new folder
11) Renaming a new folder
12) Deleting a new folder
Features of UNIX




Multi-user
More than one user can use the machine at a time
Supported via terminals (serial or network connection)
Multi-tasking
More than one program can be run at a time
Hierarchical directory structure
to support the organization and maintenance of files
Portability
only the kernel ( <10%) written in assembler
tools for program development
a wide range of support tools (debuggers, compilers)