system programing
-
Upload
manish-yadav -
Category
Documents
-
view
257 -
download
0
Transcript of system programing
-
8/8/2019 system programing
1/15
Subject:-System programming & system Administration
Unit-1
System programming
Def: - System programming (orsystems programming) is the activity ofprogrammingsystem software.
The primary distinguishing characteristic of systems programming when compared to
application programming is that application programming aims to produce software
which provides services to the user (e.g. word processor), whereas systems programmingaims to produce software which provides services to the computer hardware (e.g. disk
defragmenter).
System Software have direct control and access to your computer hardware , and
memory locations . They perform I/O operations on various memory locations , andcontrol the hardware , to make the application software do a task . Operating systems ,
are the main examples for system software .
Examples :
1) Microsoft Windows
2) Linux3) Unix
4) Mac OSX
5) DOS
6) BIOS Software7) HD Sector Boot Software
8) Device Driver Software i.e Graphics Driver etc
9) Linker Software
10) Assembler and Compiler Software
i
http://en.wikipedia.org/wiki/Programminghttp://en.wikipedia.org/wiki/System_softwarehttp://en.wikipedia.org/wiki/Application_programminghttp://en.wikipedia.org/wiki/Application_softwarehttp://en.wikipedia.org/wiki/Word_processorhttp://en.wikipedia.org/wiki/Computer_hardwarehttp://en.wikipedia.org/wiki/Disk_defragmenterhttp://en.wikipedia.org/wiki/Disk_defragmenterhttp://en.wikipedia.org/wiki/Programminghttp://en.wikipedia.org/wiki/System_softwarehttp://en.wikipedia.org/wiki/Application_programminghttp://en.wikipedia.org/wiki/Application_softwarehttp://en.wikipedia.org/wiki/Word_processorhttp://en.wikipedia.org/wiki/Computer_hardwarehttp://en.wikipedia.org/wiki/Disk_defragmenterhttp://en.wikipedia.org/wiki/Disk_defragmenter -
8/8/2019 system programing
2/15
Application software run under System Software , and are made to do a specific task i.e
( Word Processing etc) , which have indirect access to the hardware (i.e Behind SystemSoftware) .
Examples:Web browser, word processing software, spreadsheet software, database software,
presentation graphics software.
1) Opera (Web Browser)
2) Microsoft Word (Word Processing)
3) Microsoft Excel (Spreadsheet software)
5) MySQL (Database Software)6) Microsoft PowerPoint (Presentation Software)
7) iTunes (Music / Sound Software)
8) VLC Media Player (Audio / Video Software )
9) World of War craft (Game Software)10) Adobe Photoshop (Graphics Software)
Anti-virus are system software only. Though they are installed as an application, still they
are used to ensure the proper functioning of the computer.So it is indeed System software.
**Evolution of components systems programming: - Page No. 4 to 7 (System
Programmingby Donovan)
ii
-
8/8/2019 system programing
3/15
Assembler:-
Assembly languages:-
Assembly languages are a family oflow-level languages for programming computers,microprocessors, microcontrollers, and other (usually) integrated circuits. They
implement a symbolic representation of the numeric machine codes and other constants
needed to program a particularCPU architecture. This representation is usually definedby the hardware manufacturer, and is based on abbreviations (called mnemonics) that
help the programmer remember individual instructions, registers, etc. An assembly
language is thus specific to a certain physical or virtual computer architecture (as
opposed to most high-level languages, which are usuallyportable).
Assembler is a program which takes assembly source code and assembles it intomachine code.
Or
A program to convert assembly language into machine language
Or
Programming languageprocessorthat translates an assembly languageprogram (the
source program) to the machine language program (the object program) executable by acomputer
There are two types of assemblers based on how many passes through the source are
needed to produce the executable program. One pass assemblers go through the source
code once and assumes that all symbols will be defined before any instruction thatreferences them. Two pass assemblers (and multi-pass assemblers) create a table with all
unresolved symbols in the first pass, then use the 2nd pass to resolve these addresses.
The advantage in one pass assemblers is speed - which is not as important as it once waswith advances in computer speed and capabilities.
The advantage of the two-pass assembler is that symbols can be defined anywhere in theprogram source. As a result, the program can be defined in a more logical and meaningful
way. This makes two-pass assembler programs easier to read and maintain
iii
http://en.wikipedia.org/wiki/Low-level_languagehttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Microprocessorhttp://en.wikipedia.org/wiki/Microcontrollerhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Machine_codehttp://en.wikipedia.org/wiki/CPUhttp://en.wikipedia.org/wiki/Mnemonic#Assembly_mnemonicshttp://en.wikipedia.org/wiki/Instruction_(computer_science)http://en.wikipedia.org/wiki/Processor_registerhttp://en.wikipedia.org/wiki/High-level_languagehttp://en.wikipedia.org/wiki/Portinghttp://www.businessdictionary.com/definition/programming-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/assembly-language.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/computer.htmlhttp://en.wikipedia.org/wiki/Low-level_languagehttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Microprocessorhttp://en.wikipedia.org/wiki/Microcontrollerhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Machine_codehttp://en.wikipedia.org/wiki/CPUhttp://en.wikipedia.org/wiki/Mnemonic#Assembly_mnemonicshttp://en.wikipedia.org/wiki/Instruction_(computer_science)http://en.wikipedia.org/wiki/Processor_registerhttp://en.wikipedia.org/wiki/High-level_languagehttp://en.wikipedia.org/wiki/Portinghttp://www.businessdictionary.com/definition/programming-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/assembly-language.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/computer.html -
8/8/2019 system programing
4/15
Loader:-
A loader is the part of an operating system that is responsible for one of the essential
stages in the process of starting a program, loading programs, that is, starting upprograms by reading the contents of executable files (executables- files containing
program text) into memory, then carrying out other required preparatory tasks, afterwhich the program code is finally allowed to run and is started when the operating systempasses control to the loaded program code.
Or
An operating system utility that copies programs from a storage device to main memory,
where they can be executed. In addition to copying a program into main memory, the
loader can also replace virtualaddresses withphysical addresses.
All operating systems that support program loading have loaders, apart from systems
where code executes directly from ROM or in the case of highly specialized computer
systems that only a fixed set of specialised programs.
In many operating systems the loader is permanently resident in memory, although someoperating systems that support virtual memory may allow the loader to be located in a
region of memory that ispageable.
iv
http://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Executableshttp://www.webopedia.com/TERM/l/operating_system.htmlhttp://www.webopedia.com/TERM/l/utility.htmlhttp://www.webopedia.com/TERM/l/copy.htmlhttp://www.webopedia.com/TERM/l/program.htmlhttp://www.webopedia.com/TERM/l/storage_device.htmlhttp://www.webopedia.com/TERM/l/main_memory.htmlhttp://www.webopedia.com/TERM/l/execute.htmlhttp://www.webopedia.com/TERM/l/virtual.htmlhttp://www.webopedia.com/TERM/l/address.htmlhttp://www.webopedia.com/TERM/l/physical.htmlhttp://en.wikipedia.org/wiki/Virtual_memoryhttp://en.wikipedia.org/wiki/Paginghttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Executableshttp://www.webopedia.com/TERM/l/operating_system.htmlhttp://www.webopedia.com/TERM/l/utility.htmlhttp://www.webopedia.com/TERM/l/copy.htmlhttp://www.webopedia.com/TERM/l/program.htmlhttp://www.webopedia.com/TERM/l/storage_device.htmlhttp://www.webopedia.com/TERM/l/main_memory.htmlhttp://www.webopedia.com/TERM/l/execute.htmlhttp://www.webopedia.com/TERM/l/virtual.htmlhttp://www.webopedia.com/TERM/l/address.htmlhttp://www.webopedia.com/TERM/l/physical.htmlhttp://en.wikipedia.org/wiki/Virtual_memoryhttp://en.wikipedia.org/wiki/Paging -
8/8/2019 system programing
5/15
Linker:-
A linker orlink editor is a program that takes one or more objects generated by acompilerand combines them into a single executable program.
In IBMmainframe environments such as OS/360 this program is known as a linkage
editor.
Also called link editorand binder, a linker is aprogram that combines object modules to
form an executable program. Manyprogramming languages allow you to write different
pieces ofcode, called modules, separately. This simplifies the programming task becauseyou can break a large program into small, more manageable pieces. Eventually, though,
you need to put all the modules together. This is the job of the linker.
Linkingis the process of combining various pieces of code and data together to form a
single executable that can be loaded in memory. Linking can be done at compile time, atload time (by loaders) and also at run time (by application programs).
v
http://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Object_filehttp://en.wikipedia.org/wiki/Compilerhttp://en.wikipedia.org/wiki/Executablehttp://www.answers.com/topic/international-business-machines-corporationhttp://www.answers.com/topic/mainframe-computerhttp://www.answers.com/topic/os-360http://www.webopedia.com/TERM/L/program.htmlhttp://www.webopedia.com/TERM/L/module.htmlhttp://www.webopedia.com/TERM/L/programming_language.htmlhttp://www.webopedia.com/TERM/L/programming_language.htmlhttp://www.webopedia.com/TERM/L/code.htmlhttp://www.webopedia.com/TERM/L/module.htmlhttp://www.webopedia.com/TERM/L/module.htmlhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Object_filehttp://en.wikipedia.org/wiki/Compilerhttp://en.wikipedia.org/wiki/Executablehttp://www.answers.com/topic/international-business-machines-corporationhttp://www.answers.com/topic/mainframe-computerhttp://www.answers.com/topic/os-360http://www.webopedia.com/TERM/L/program.htmlhttp://www.webopedia.com/TERM/L/module.htmlhttp://www.webopedia.com/TERM/L/programming_language.htmlhttp://www.webopedia.com/TERM/L/code.htmlhttp://www.webopedia.com/TERM/L/module.html -
8/8/2019 system programing
6/15
Macros:-
Def:-A rule orpattern that specifies how a certain input sequence (often a sequence of
characters) should be mapped to an output sequence (also often a sequence of characters)
according to a defined procedure. The mapping process that instantiates a macro into aspecific output sequence is known as macro expansion.
Or
A macro is a simple program that automates a series of Image commands. The easiest
way to create a macro is to record a series of commands using the command recorder. A
macro is saved as a text file and executed by selecting a menu command, by pressing a
key or by clicking on an icon in the Image toolbar.
Or
A symbol, name, orkey that represents a list ofcommands, actions, orkeystrokes. Many
programs allow you to create macros so that you can enter a single characteror word to
perform a whole series of actions. Suppose, for example, that you are editing a file andwant to indent every third line five spaces. If yourword processorsupports macros, you
can create one that consists of the following keystrokes:
Move Cursorto Beginning of Line
Move Cursor Down 1 Line
Move Cursor Down 1 Line
Move Cursor Down 1 Line
Insert 5 Spaces
Now you can enter the name of the macro, and the word processor will perform all these
commands at once.
You can also use macros to enter words or phrases that you use frequently. For example,you could define a macro to contain all the keystrokes necessary to begin a letter -- your
name, address, and a code that inserts the current date. Then, whenever you write a letter,
you just press the macro key to include the letter header.
vi
http://en.wikipedia.org/wiki/Patternhttp://en.wikipedia.org/wiki/Character_(computing)http://rsbweb.nih.gov/ij/developer/macro/macros.html#recorder%23recorderhttp://rsbweb.nih.gov/ij/developer/macro/macros.html#tools%23toolshttp://www.webopedia.com/TERM/M/name.htmlhttp://www.webopedia.com/TERM/M/key.htmlhttp://www.webopedia.com/TERM/M/command.htmlhttp://www.webopedia.com/TERM/M/keystroke.htmlhttp://www.webopedia.com/TERM/M/program.htmlhttp://www.webopedia.com/TERM/M/character.htmlhttp://www.webopedia.com/TERM/M/file.htmlhttp://www.webopedia.com/TERM/M/word_processor.htmlhttp://www.webopedia.com/TERM/M/support.htmlhttp://www.webopedia.com/TERM/M/cursor.htmlhttp://www.webopedia.com/TERM/M/insert.htmlhttp://en.wikipedia.org/wiki/Patternhttp://en.wikipedia.org/wiki/Character_(computing)http://rsbweb.nih.gov/ij/developer/macro/macros.html#recorder%23recorderhttp://rsbweb.nih.gov/ij/developer/macro/macros.html#tools%23toolshttp://www.webopedia.com/TERM/M/name.htmlhttp://www.webopedia.com/TERM/M/key.htmlhttp://www.webopedia.com/TERM/M/command.htmlhttp://www.webopedia.com/TERM/M/keystroke.htmlhttp://www.webopedia.com/TERM/M/program.htmlhttp://www.webopedia.com/TERM/M/character.htmlhttp://www.webopedia.com/TERM/M/file.htmlhttp://www.webopedia.com/TERM/M/word_processor.htmlhttp://www.webopedia.com/TERM/M/support.htmlhttp://www.webopedia.com/TERM/M/cursor.htmlhttp://www.webopedia.com/TERM/M/insert.html -
8/8/2019 system programing
7/15
Compiler:-
Programming languageprocessorthat translates aprogram written in a high-level
language (the 'source program') which humans can understand, into machine languageprogram (the 'object program') which the computers can understand. A compiled
program, in comparison to an interpreted program generally runs (executes) much faster.
Or
A compiler is a computer program (or set of programs) that transforms source code
written in a computer language (thesource 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.
Or
The name "compiler" is primarily used for programs that translate source code from a
high-level programming language to a lower level language (e.g., assembly language or
machine code).
A program that translates from a low level language to a higher level oneis adecompiler.
A compiler is likely to perform many or all of the following operations:
lexical analysis,preprocessing,parsing, semantic analysis, code generation, and code
optimization.
A compiler is likely to perform many or all of the following operations: lexical analysis,
preprocessing,parsing, semantic analysis, code generation, and code optimization.
vii
http://www.businessdictionary.com/definition/programming-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/computer.htmlhttp://www.investorwords.com/994/comparison.htmlhttp://www.businessdictionary.com/definition/run.htmlhttp://www.businessdictionary.com/definition/execute.htmlhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/Object_codehttp://en.wikipedia.org/wiki/Executablehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/Assembly_languagehttp://en.wikipedia.org/wiki/Machine_codehttp://en.wikipedia.org/wiki/Decompilerhttp://en.wikipedia.org/wiki/Decompilerhttp://en.wikipedia.org/wiki/Lexical_analysishttp://en.wikipedia.org/wiki/Preprocessinghttp://en.wikipedia.org/wiki/Parsinghttp://en.wikipedia.org/wiki/Code_generation_(compiler)http://en.wikipedia.org/wiki/Code_optimizationhttp://en.wikipedia.org/wiki/Code_optimizationhttp://en.wikipedia.org/wiki/Lexical_analysishttp://en.wikipedia.org/wiki/Preprocessinghttp://en.wikipedia.org/wiki/Parsinghttp://en.wikipedia.org/wiki/Code_generation_(compiler)http://en.wikipedia.org/wiki/Code_optimizationhttp://www.businessdictionary.com/definition/programming-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/computer.htmlhttp://www.investorwords.com/994/comparison.htmlhttp://www.businessdictionary.com/definition/run.htmlhttp://www.businessdictionary.com/definition/execute.htmlhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/Object_codehttp://en.wikipedia.org/wiki/Executablehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/Assembly_languagehttp://en.wikipedia.org/wiki/Machine_codehttp://en.wikipedia.org/wiki/Decompilerhttp://en.wikipedia.org/wiki/Lexical_analysishttp://en.wikipedia.org/wiki/Preprocessinghttp://en.wikipedia.org/wiki/Parsinghttp://en.wikipedia.org/wiki/Code_generation_(compiler)http://en.wikipedia.org/wiki/Code_optimizationhttp://en.wikipedia.org/wiki/Code_optimizationhttp://en.wikipedia.org/wiki/Lexical_analysishttp://en.wikipedia.org/wiki/Preprocessinghttp://en.wikipedia.org/wiki/Parsinghttp://en.wikipedia.org/wiki/Code_generation_(compiler)http://en.wikipedia.org/wiki/Code_optimization -
8/8/2019 system programing
8/15
**Software Tools: - Page No. 249 to 264 (System Programming & Operating Systemby Dhamdhere)
viii
-
8/8/2019 system programing
9/15
Software tool:-
A program that is employed in the development, repair, or enhancement of otherprograms or of hardware. Traditionally a set of software tools addressed only the
essential needs during program development: a typical set might consist of a text editor,compiler,link loader, and some form ofdebug tool. Such a set concentrates solely onthe program production phase and is that normally provided by a program developmentsystem.
It is now recognized that software tools can assist in all activities of all phases of the
software life cycle, including management and quality-assurance activities. Thus acomprehensive set would address such issues as requirements specification, design,
validation, configuration control, and project management. Such tools would frequently
form part of an integrated software engineering environment.
Or
Software, such as a computerprogram, routine, subroutine, programblock, or programmodule, that can be used to develop, test, analyze, or maintain a computer program or its
documentation.Note: Examples of software tools are automated software verification
routines, compilers, program maintenance routines, bootstraps, program analyzers, andsoftware monitors.
ix
http://www.encyclopedia.com/doc/1O11-texteditor.htmlhttp://www.encyclopedia.com/doc/1O11-compiler.htmlhttp://www.encyclopedia.com/doc/1O11-linkloader.htmlhttp://www.encyclopedia.com/doc/1O11-linkloader.htmlhttp://www.encyclopedia.com/doc/1O11-debugtool.htmlhttp://www.encyclopedia.com/doc/1O11-programdevelopmentsystem.htmlhttp://www.encyclopedia.com/doc/1O11-programdevelopmentsystem.htmlhttp://www.encyclopedia.com/doc/1O11-softwarelifecycle.htmlhttp://www.encyclopedia.com/doc/1O11-softwareengineerngnvrnmnt.htmlhttp://www.its.bldrdoc.gov/fs-1037/dir-034/_4956.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-008/_1184.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-028/_4172.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-031/_4646.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-035/_5167.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-005/_0663.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-023/_3377.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-022/_3199.htmhttp://www.encyclopedia.com/doc/1O11-texteditor.htmlhttp://www.encyclopedia.com/doc/1O11-compiler.htmlhttp://www.encyclopedia.com/doc/1O11-linkloader.htmlhttp://www.encyclopedia.com/doc/1O11-debugtool.htmlhttp://www.encyclopedia.com/doc/1O11-programdevelopmentsystem.htmlhttp://www.encyclopedia.com/doc/1O11-programdevelopmentsystem.htmlhttp://www.encyclopedia.com/doc/1O11-softwarelifecycle.htmlhttp://www.encyclopedia.com/doc/1O11-softwareengineerngnvrnmnt.htmlhttp://www.its.bldrdoc.gov/fs-1037/dir-034/_4956.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-008/_1184.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-028/_4172.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-031/_4646.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-035/_5167.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-005/_0663.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-023/_3377.htmhttp://www.its.bldrdoc.gov/fs-1037/dir-022/_3199.htm -
8/8/2019 system programing
10/15
Text editor
A text editor is a type ofprogram used for editing plain text files.
Text editors are often provided with operating systems or software development
packages, and can be used to change configuration files andprogramming languagesource code.
An example of a text editor; Vim.
x
http://en.wikipedia.org/wiki/Software_applicationhttp://en.wikipedia.org/wiki/Text_filehttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Configuration_filehttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Vim_(text_editor)http://en.wikipedia.org/wiki/Software_applicationhttp://en.wikipedia.org/wiki/Text_filehttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Configuration_filehttp://en.wikipedia.org/wiki/Programming_languagehttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Vim_(text_editor) -
8/8/2019 system programing
11/15
Types of text editors
Some text editors are small and simple, while others offer a broad and complex range of
functionality.
For example, Unix and Unix-like operating systems have the vi editor (or a variant), but
many also include the Emacs editor.
Microsoft Windows systems come with the very simple Notepad, though many people
especially programmersprefer to use one of many otherWindows text editors withmore features.
UnderApple Macintosh's classic Mac OS there was the native SimpleText, which wasreplaced by TextEdit. Some editors, such as WordStar, have dual operating modes
allowing them to be either a text editor or a word processor.
Text editors geared for professional computer users place no limit on the size of the file
being opened. In particular, they start quickly even when editing large files, and are
capable of editing files that are too large to fit the computer's main memory. Simpler texteditors often just read files into an array in RAM. On larger files this is a slow process,
and very large files often do not fit.
The ability to read and write very large files is needed by many professional computer
users. For example, system administrators may need to read long log files. Programmersmay need to change large source code files, or examine unusually large texts, such as an
entire dictionary placed in a single file.
Some text editors include specialized computer languages to customize the editor
(programmable editors). For example, Emacs can be customized by programming inLisp. These usually permit the editor to simulate the keystroke combinations and features
of other editors, so that users do not have to learn the native command combinations.
Many text editors for software developers include source code syntax highlighting andautomatic completion to make programs easier to read and write. Programming editorsoften permit one to select the name of a subprogram or variable, and then jump to its
definition and back. Often an auxiliary utility like ctags is used to locate the definitions.
xi
http://en.wikipedia.org/wiki/Unixhttp://en.wikipedia.org/wiki/Vihttp://en.wikipedia.org/wiki/Emacshttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Notepadhttp://en.wikipedia.org/wiki/Category:Windows_text_editorshttp://en.wikipedia.org/wiki/Apple_Macintoshhttp://en.wikipedia.org/wiki/Mac_OShttp://en.wikipedia.org/wiki/SimpleTexthttp://en.wikipedia.org/wiki/TextEdithttp://en.wikipedia.org/wiki/WordStarhttp://en.wikipedia.org/wiki/Random_access_memoryhttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Lisp_(programming_language)http://en.wikipedia.org/wiki/Syntax_highlightinghttp://en.wikipedia.org/wiki/Ctagshttp://en.wikipedia.org/wiki/Unixhttp://en.wikipedia.org/wiki/Vihttp://en.wikipedia.org/wiki/Emacshttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Notepadhttp://en.wikipedia.org/wiki/Category:Windows_text_editorshttp://en.wikipedia.org/wiki/Apple_Macintoshhttp://en.wikipedia.org/wiki/Mac_OShttp://en.wikipedia.org/wiki/SimpleTexthttp://en.wikipedia.org/wiki/TextEdithttp://en.wikipedia.org/wiki/WordStarhttp://en.wikipedia.org/wiki/Random_access_memoryhttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Lisp_(programming_language)http://en.wikipedia.org/wiki/Syntax_highlightinghttp://en.wikipedia.org/wiki/Ctags -
8/8/2019 system programing
12/15
Typical features of text editors:-
Search and replace
search string with a replacement string. Different methods are employed, Global(ly)
Search And Replace, Conditional Search and Replace, Unconditional Search and
Replace.
Cut, copy, and paste
Most text editors provide methods to duplicate and move text within the file, or between
files.
Text formatting
Text editors often provide basic formatting features like line wrap,auto-indentation,bullet list formatting, comment formatting, and so on.
Undo and redo
xii
http://en.wikipedia.org/wiki/Line_wraphttp://en.wikipedia.org/wiki/Auto-indentationhttp://en.wikipedia.org/wiki/Bullet_listhttp://en.wikipedia.org/wiki/Comment_(computer_programming)http://en.wikipedia.org/wiki/Line_wraphttp://en.wikipedia.org/wiki/Auto-indentationhttp://en.wikipedia.org/wiki/Bullet_listhttp://en.wikipedia.org/wiki/Comment_(computer_programming) -
8/8/2019 system programing
13/15
Interpreter:-Computer languageprocessorthat translates aprogram line-by-line (statement-by-statement) and carries out the specified actions in sequence. In contrast, an assembleror
compilercompletely translates a program written in a high-level language (the source
program) into a machine-language program (the objectprogram) for laterexecution.Whereas a compiled-program executes much faster than an interpreted-program, an
interpreter allows examination and modification of the program while it is running
(executing).
Or
Aprogram 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.
Or
In computing, an interpreter is a computer program that reads the source code of anothercomputer program and executes that program.
An interpreter translates high-level instructions into an intermediate form, which it then
executes. In contrast, a compilertranslates high-level instructions directly into machinelanguage. 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 betime-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, when aprogrammerwants to add smallsections at a time and test them quickly. In addition, interpreters are often used in
education because they allow students to program interactively.
Both interpreters and compilers are available for most high-level languages. However,BASIC and LISP are especially designed to be executed by an interpreter. In addition,
page description languages, such as PostScript, use an interpreter. Every PostScript
printer, for example, has a built-in interpreter that executes PostScript instructions.
xiii
http://www.businessdictionary.com/definition/computer-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/action.htmlhttp://www.businessdictionary.com/definition/assembler.htmlhttp://www.businessdictionary.com/definition/compiler.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/execution.htmlhttp://www.businessdictionary.com/definition/execute.htmlhttp://www.businessdictionary.com/definition/examination.htmlhttp://www.businessdictionary.com/definition/modification.htmlhttp://www.businessdictionary.com/definition/executing.htmlhttp://www.webopedia.com/TERM/I/program.htmlhttp://www.webopedia.com/TERM/I/execute.htmlhttp://www.webopedia.com/TERM/I/instruction.htmlhttp://www.webopedia.com/TERM/I/high_level_language.htmlhttp://www.webopedia.com/TERM/I/run.htmlhttp://www.webopedia.com/TERM/I/compile.htmlhttp://cplus.about.com/od/glossary/g/glosource.htmhttp://www.webopedia.com/TERM/I/compiler.htmlhttp://www.webopedia.com/TERM/I/machine_language.htmlhttp://www.webopedia.com/TERM/I/machine_language.htmlhttp://www.webopedia.com/TERM/I/programmer.htmlhttp://www.webopedia.com/TERM/I/BASIC.htmlhttp://www.webopedia.com/TERM/I/LISP.htmlhttp://www.webopedia.com/TERM/I/Page_Description_Language_PDL.htmlhttp://www.webopedia.com/TERM/I/PostScript.htmlhttp://www.webopedia.com/TERM/I/printer.htmlhttp://www.businessdictionary.com/definition/computer-language.htmlhttp://www.businessdictionary.com/definition/processor.htmlhttp://www.businessdictionary.com/definition/program.htmlhttp://www.businessdictionary.com/definition/action.htmlhttp://www.businessdictionary.com/definition/assembler.htmlhttp://www.businessdictionary.com/definition/compiler.htmlhttp://www.businessdictionary.com/definition/machine-language.htmlhttp://www.businessdictionary.com/definition/object.htmlhttp://www.businessdictionary.com/definition/execution.htmlhttp://www.businessdictionary.com/definition/execute.htmlhttp://www.businessdictionary.com/definition/examination.htmlhttp://www.businessdictionary.com/definition/modification.htmlhttp://www.businessdictionary.com/definition/executing.htmlhttp://www.webopedia.com/TERM/I/program.htmlhttp://www.webopedia.com/TERM/I/execute.htmlhttp://www.webopedia.com/TERM/I/instruction.htmlhttp://www.webopedia.com/TERM/I/high_level_language.htmlhttp://www.webopedia.com/TERM/I/run.htmlhttp://www.webopedia.com/TERM/I/compile.htmlhttp://cplus.about.com/od/glossary/g/glosource.htmhttp://www.webopedia.com/TERM/I/compiler.htmlhttp://www.webopedia.com/TERM/I/machine_language.htmlhttp://www.webopedia.com/TERM/I/machine_language.htmlhttp://www.webopedia.com/TERM/I/programmer.htmlhttp://www.webopedia.com/TERM/I/BASIC.htmlhttp://www.webopedia.com/TERM/I/LISP.htmlhttp://www.webopedia.com/TERM/I/Page_Description_Language_PDL.htmlhttp://www.webopedia.com/TERM/I/PostScript.htmlhttp://www.webopedia.com/TERM/I/printer.html -
8/8/2019 system programing
14/15
Program generator:-
Software program that enables an individual to easily create a program of theirown with less effort and programming knowledge. With a program generator auser may only be required to specify the steps or rules required for his or herprogram and not need to write any code or very little code.
Some great examples of a program generator are: Adventure Maker, Alice,Stagecast Creator, and YoYo Games
Or
A program generator automatically generates a program based on a flow-chart of a series
of sequence control processes. The flow-chart is prepared while being displayed on the
display area of a display means such as CRT, and when the flow-chart is complete, aprogram is automatically generated corresponding to the flow-chart.
xiv
http://www.computerhope.com/jargon/s/software.htmhttp://www.adventuremaker.com/http://www.alice.org/http://www.stagecast.com/http://www.yoyogames.com/http://www.computerhope.com/jargon/s/software.htmhttp://www.adventuremaker.com/http://www.alice.org/http://www.stagecast.com/http://www.yoyogames.com/ -
8/8/2019 system programing
15/15
Debug monitor:-
A debug monitor is very powerful graphical or console mode tool that monitors all
the activities that are handled by the WinDriver Kernel. You can use the debugmonitor to see how each command that is sent to the kernel is executed.
A debug monitor, simply put, is a tool that helps to find and reduce the number of
bugs and defects in a computer program or any electrical device within or attachedto the computer in order to make it act the way it should. While the driver is being
created and downloaded, the debug monitor helps it work properly. For example,when an armored car drives up to a bank and the guards have to transfer money
from the truck to the bank, there are special guards that stand watch to make sureno one tries to rob them thus making the transaction go smoothly. Those guards
could be the debug monitors in the computer industry.
If the debugging monitor locates a bug or defect in any of the equipment, it will firsttry to reproduce the problem which will allow a programmer to view each string that
was within the bug or defect range and try to fix it. A programmer is a technician
who has learned the basic format of computers that make them run. These arestrings of technical information that most people using computers will never see. For
example, using a clock. The general public will plug in the clock and use it to tell timebut will not open it up to see how it works. That is saved for the people who fix
clocks. They are the programmers of clocks in the computer industry.
The programmer will delete strings or add new ones and then use the debug monitor
to re-create the driver download to see if he fixed the problem. This can be a tedioustask with all the processes that run in the computer, but the debug monitor helps to
make it a lot easier.
Debug monitor is a piece of software that has been designed specifically for use as a
debugging tool for processors and chips. The debug monitor provides a set ofprimitive commands to view and modify memory locations and registers, create and
remove breakpoints, and execute your program. A remote debugger with knowledge
of the command format communicates with the debug monitor and combines theseprimitives to fulfill higher-level requests like program download and single-step.
xv