ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 로더의 4단계
    전공/시스템프로그래밍 2020. 6. 6. 19:17

    수업 시작한지 얼마 안되서 부프로그램이 뭔지 몰라 쪽을 당했다..

    부프로그램이란 하나의 프로그램을 작은 프로그램들로 나눈 것인데, 거의 함수와 비슷하게 쓰인다.

    이걸 몰라가지고 교수님께서 나보고 C에서 부프로그램 안써봤냐고 하시길래 '저.. 저는 비주류 언어를 공부해가지고 잘 모르겠습니다' 라는 쌉소리를 해버렸다..

    시스템 프로그램

    시스템프로그램은 어플리케이션 프로그램을 실행시켜주기 위한 시스템이다.

    H/W 위에 S/W가 탑재되는 건 자명한 사실이다.

    여기서 S/W 안에서 두 계층(시프/어플)으로 나뉜다.

    로더

    로더는 프로그램을 메모리에 적재하는 역할을 한다.

    이러한 과정은 4단계로 나뉜다.

    1. Allocation(할당)

    프로그램을 할당할 수 있을만한 공간을 찾는다.

    2. Linking(연결)

    프로그램과 빈 공간을 연결한다.

    3. Relocation(재배치)

    프로그램의 상대주소를 공간의 절대주소로 바꾼다.

    4. Loading(적재)

    프로그램을 넣는다.

    빈 공간을 찾아 프로그램과 연결하고 상대주소를 절대주소로 변환(재배치)한 뒤 프로그램 넣기

    이러한 로더는 링킹을 해주는 링커가 없다면 모듈로더, 4가지가 다 존재하면 상대로더 라고 부른다.

    일반적으로 로더라고 하면 상대로더를 지칭한다.

    펌웨어

    펌웨어는 하드웨어를 제어하는 프로그램으로, 시스템 프로그램과 별개의 시스템이다.

    저급언어와 고급언어의 연산방식 차이

    저급언어는 프로세서 별로 연산하는 방식이 제각기이다.

    예를 들면 프로세서1은 ADD 4, 5 를 해야 되고

    프로세서2는 콤마없이 ADD 4 5 를 해야 한다.

    반면 고급언어는 프로세서에 상관없이 사용한다.

    댓글

Designed by Tistory.