1. Background of System Programming

Worldi·2021년 3월 1일
0

시스템프로그래밍

목록 보기
1/2

System Software

  • a variety of programs that support the operation of a computer system. This makes it possible for the user to focus on an application or other problem to be solved without needing to know the details of how the machine works internally. System software is machine-dependent.
    기계, 머신하고 밀접하게 연결되어 구동됨. 기계의 구조에 영향을 받게 된다. 특정 기계에 대해 작동하게 된다. 컴퓨터의 내부 구조를 알아야 한다.

system software : 시스템레벨 에서 일을 함. ↔ applictaion software : 사용자 측면

Examples of System Software

  • Compiler : Translate high-level language(대표적으로 c언어) into assembly code.
  • Assembler : Translate assembly language into machine code.
  • Loader : Place object file on the memory.
  • Linker : Combine object files into a single executable image.

상위레벨

  • Text Editor : Help users to create files.
  • Operating System : Manage all the hardware and software.

예) c program → assembly → machine code

c에서 assembly 는 컴파일러가, 어셈블리에서 머신 코드는 어셈블러가 역학을 함. 머신 코드를 구동하는데 로더, 프로그램 실행 위해 목적 파일 합쳐주는 역할이 링커가 필요. 문서를 작성하는 일을 하는문서 편집기도 시스템 레벨의 소프트웨어가 됨.

Characteristics of a System Software - machine dependency.

An application program is primarily concerned with the solution of some problem, while system programs are intended to support the operation and use of the computer itself.

instruction set Architecture : 명령어의 구성 체계를 바탕으로 시스템 소프트웨어가 구성이 된다.

assembler launguage: machine dependent, 레지스터 연산, 메모리 참조, accumulator 연산

어떻게 가상의 기계를 바탕으로 시스템 소프트 웨어를 개발할 것인가?

  • 프로그래밍 : 데이터를 처리한다. 시스템의 어딘가에 저장하고, 원하는 결과를 얻는다.
    sic 는 sic/xe 에서 구동됨. 하지만 반대로 sic/xe 에서 구현된 소프트웨어는 sic 에서 구동이 되지 않음.

sic 머신 구조

1) 메모리

1byte , 1word
바이트 단위로 처리 된다. ( 8비트)
word 의 경우, 가장 낮은 바이트를 이용하여 access 한다.
address 가 15 bit → 2^15 메모리 엑세스 최대. 2^10 = 1 kb ⇒ 32 kb

2) 레지스터

5개의 레지스터, 각각 24 비트로 구성되어 있다.
a,x,l(메인에서 서브루틴으로 갈때 현재 점프하기 전 바로 주소를 저장해놓음. ) ,pc(program : set of instruction 프로그램을 순차적으로 실행하는 것.), sw (program : set of instruction 프로그램을 순차적으로 실행하는 것.)

profile
https://worldi.tistory.com/ 로 블로그 이전합니다.

0개의 댓글