Pular para o conteúdo

Conheça Walt Disney World

System programming language

A System programming language is usually used to mean "a language for system programming": that is, a language designed for writing system software as distinct from application software.

Contents

Features

In contrast with application languages, such system programming languages typically offer more direct access to the physical hardware of the machine: an archetypical system programming language in this sense was BCPL. System programming languages often lack built in input/output facilities because a system-software project usually develops its own input/output or builds on basic monitor I/O or screen management services facilities. The distinction between languages for system programming and applications programming became blurred with widespread popularity of C and Pascal.

History

One of the earliest of these system programming languages was PL360, which had the general syntax of ALGOL 60, but whose statements directly manipulated CPU registers and memory. A typical PL360 statement is

R9 := R8 and R7 shll 8 or R6

signifying that registers 8 and 7 should be and'ed together, the result shifted left 8 bits, the result of that or'ed with the contents of register 6, and the result placed into register 9.[1]

While PL360 is at the semantic level of assembly language, another kind of system programming language operates at a higher semantic level, but has specific extensions designed to make the language suitable for system programming. An early example of this kind of language is LRLTRAN[2], which extended Fortran with features for character and bit manipulation, pointers, and directly-addressed jump tables.

Subsequently, languages such as C were developed, where the combination of features was sufficient to write system software, and a compiler could be developed that generated efficient object programs on modest hardware. Such a language generally omits features that cannot be implemented efficiently, and adds a small number of machine-dependent features needed to access specific hardware capabilities; inline assembly code, such as C's asm statement, is often used for this purpose. Although many such languages were developed,[3] C and C++ are the ones that have survived.

System Programming Language or SPL is also the name of a specific language on the HP 3000 computer series used for its operating system HP Multi-Programming Executive and other systems software.

Major system programming languages

Language Originator Date Derivation Used for
ESPOL Burroughs Corporation 1961 Algol 60 MCP
PL/I MIT 1964 - Multics
PL360 Niklaus Wirth 1968 Algol 60 Algol W
C Dennis Ritchie 1969 BCPL Unix
PL/S IBM 196x PL/I OS/360
BLISS Carnegie Mellon University 1970  ? VMS (portions)
PL.8 IBM 197x PL/I AIX

References

  1. ^ Wirth, Niklaus. PL360, A Programming Language for the 360 Computers. Journal of the ACM, 15(1): 37-74.
  2. ^ Mendicino, Sam F., Robert A. Hughes, Jeanne T. Martin, Frank H. McMahon, John E. Ranelletti, and Richard G. Zwakenberg. The LRLTRAN Compiler. C. ACM 11(11): 747-755.
  3. ^ Poel, W. L. van der, and Maarssen, L. A. Machine oriented higher level languages: proceedings of the IFIP Working Conference on Machine Oriented Higher Level Languages, Trondheim, Norway, August 27-31, 1973. International Federation for Information Processing, 1974.

External links

See also


This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.

Personal tools
  • Create account
  • Log in
Namespaces

Variants
Actions
Navigation
Toolbox
Print/export