Search This Blog

Friday, August 27, 2010

Assignment - 1 Language Processor

1) Define following terms.

a. Specification gap

b. Execution gap

c. Language processor

d. Language processing

e. Forward reference

f. Language processor pass

g. Intermediate Representation(IR)

h. Grammer

i. Binding

j. Static binding

k. Dynamic binding

2) Explain fundamentals of language processing with an example of general model of compiler.

3) If you have given following grammar:

< Sentence > = < Noun Phrase > < Verb Phrase >

< Noun Phrase > = < Article > < Noun>

< Article > = a | an | the

< Noun > = Government | College

< Verb > = made

Find: (I) IF the input string is “the Government made a college” then perform reduction operation stepwise. Generate syntax tree for same.

4) Write classification of a grammar.

5) Explain Language processor development tools.

Assignment - 2 Data Structure for Language Processing

1) Explain different entry formats of search data structure.

2) Write a generic search procedure for locate the entry of symbol in a symbol table.

3) Discuss the problem of deletion of entries in the following symbol table organizations.

a. Sequential search organization.

b. Linked list organization.

4) Write a note on binary search organization with its limitation.

5) Explain in brief Search and Allocation data structures. Write a note on Hash table organization.

6) Write a note on hashing function.

7) Explain techniques of collision handling.

8) Extended Stack Structure

9) Explain in brief the techniques to reuse memory in Heaps.

10) Memory Management in heap.

Wednesday, August 4, 2010

What is System Software?

System software is computer software designed to operate the computer hardware and to provide and maintain a platform for running application software.

The most important types of system software are:

* The computer BIOS and device firmware, which provide basic functionality to operate and control the hardware connected to or built into the computer.
* The operating system (prominent examples being Microsoft Windows, Mac OS X and Linux), which allows the parts of a computer to work together by performing tasks like transferring data between memory and disks or rendering output onto a display device. It also provides a platform to run high-level system software and application software.
* Utility software, which helps to analyze, configure, optimize and maintain the computer.

In some publications, the term system software is also used to designate software development tools (like a compiler, linker or debugger).



System software is usually not what a user would buy a computer for - instead, it can be seen as the basics of a computer which come built-in or pre-installed. In contrast to system software, software that allows users to do things like create text documents, play games, listen to music, or surf the web is called application software.

System software helps use the operating system and computer system. It includes diagnostic tools, compilers, servers, windowing systems, utilities, language translator, data communication programs, data management programs and more. The purpose of system software is to insulate the applications programmer as much as possible from the details of the particular computer complex being used, especially memory and other hardware features, and such accessory devices as communications, printers, readers, displays, keyboards, etc.

Specific kinds of system software include:

* Loaders
* Linkers
* Utility software
* Desktop environment / Graphical user interface
* Shells
* BIOS
* Hypervisors
* Boot loaders

If system software is stored on non-volatile memory such as integrated circuits, it is usually termed firmware