ݺߣ

ݺߣShare a Scribd company logo
운영체제
 Chapter 22
소프트웨어

✦   최초 전원이 들어오는 경우 랜덤한 의미없
    는 값을 가짐
✦   인텔 8080 프로세서는 0000h 주소에서 기계
    어 코드를 읽음.
입력
✦   제어판을 이용 RAM에 작성후 읽는 방법
✦   Reset on -> 마이크로로세스 실행중단
✦   Takeover on
✦   주소(A0~A15) + 데이터(D0~D7)
✦   Write on/off
✦   Takeover off
✦   Reset off
영상 표시 장치 출력
초기화 코드
    (initialization code)
1. 스택포인터 설정
2. 영상표시장치 20h 로 초기화 및
   커서 위치 설정.
3. 인터럽트 활성화 EI(Enable Interrupt)
4. HLT
키보드
1. 키입력
2. 마이크로프로세서의 인터럽트 신호 발생
3. 키보드 처리 프로그램에서
   IN 명령으로 키 판단
4. 키 처리
5. RET 명령어로 HLT로 복귀.
키입력 처리
✦   입력키가 문자, 숫자, 구두점에 해당되면,
    키보드 스캔 코드을 이용하여 Shift키가 눌렸
    는지 여부를 확인하여 정확한 ASCII 부호를
    결정.
✦   영상표시장치에 커서 위치 메모리에 기록.
✦   키입력을 반향(echo)시킨다라고 함.
키보드 처리 프로그램
          (추가 명령)

✦   W, D, R
✦   W 1020 35 4F 78 23 9B AC 67 ; Write
✦   D 1030 ; Display
✦   R 1000 ; Run
ROM

✦   초기화 코드, 각종 처리 프로그램을 제어판
    을 이용하여 입력하지 말고, 키보드를 이용.
✦   전원을 꺼도 저장되도록 읽기 전용 메모리
    (ROM)에 저장.
✦   8080 -> ROM 을 0000h 주소로 설정.
디스크

✦   프로그램과 데이터를 디스크에 저장
✦   전원이 꺼지면 데이터가 사라지는 RAM보다
    안전하며, ROM에 저장하는 것보다 쉽게 변
    경 가능
파일 시스템

✦   S 2080 2 15 3 ; Store
✦   L 2080 2 15 3 ; Load
✦   디스크 저장장치에 있는 데이터가 파일의 형
    태를 가지도록 만드는 방법.
운영체제


✦   파일 시스템, 키보드 처리 프로그램과 명령
    어 처리기... 운영체제의 일부.
CP/M
✦   CP/M (Control Program for Micros)
✦   8080 마이크로프로세서
✦   게리 킬달
✦   8인치 단면 디스켓
✦   77트랙, 트랙당 26섹터, 섹터당 128바이트
✦   총 256,256 바이트
붶팅
✦   ROM에는 부트스트랩 로더(bootstrap
    loader) 를 설치.
✦   로더는 디스켓에서 맨 처음 128바이트를 수
    행.
✦   이 디스켓 섹터에는 나머지 CP/M을 로딩하
    는 프로그램이 있음.
CP/M 메모리 배치 상태

✦   기초 입출력 시스템(BIOS),
    기본 디스크 운영 체제(BDOS),
    콘솔 명령어 처리기(CCP)는 약
    6KB 정도.
✦   전체 64KB에서 임시 프로그램
    영역(TPA)가 58KB 차지.
✦   초기 TPA에는 어떤 프로그램도
    로딩되어 있지 않음.
CCP, TPA
✦   콘솔은 키보드와 화면을 통칭하는 말
✦   프롬프트(prompt)
    A>
✦   DIR, DIR *.TXT, ERA *.TXT, TYPE A.TXT
✦   인식할 수 없는 명령어인 경우
    저장된 다른 프로그램 이름이라 추정.
✦   0100h TPA영역에 로딩, 수행함.
✦   ED, PIP 는 제공, 워드프로세서... 구입.
API
✦   운영체제는 컴퓨터 하드웨어에 쉽게 접근할 수 있는
    프로그램을 제공해줌.
✦   이러한 접근 방법을 응용프로그램 인터페이스(API)
    라고 함.
✦   MVI C, 16h
    CALL 5 ; create empty file
✦   메모리 0005h 번지에는 CP/M에 의해 설정된 JMP
    명령어가 있어 BIOS 서브루틴으로 분기.
✦   API는 컴퓨터 하드웨어에 대한 장치 독립적 인터페
    이스를 제공.
DOS
✦   팀 패터슨이 만든 QDOS(Quick and Dirty
    Operating System)을 마이크로소프트사가
    라이선스 함
✦   이후 IBM 이 MS-DOS 를 라이선스 함.
✦   MS는 FAT 방식 개발/도입.
✦   INT 21h 제공.
✦   MS-DOS 2.0 은 계층적 파일 시스템 제공.
UNIX
✦   1970년대 초반 벨연구소의 켄 톰슨과 데니스
    리치가 개발.
✦   시분할(timesharing) 기법을 이용한
    멀티 태스킹 운영체제.
✦   가상 메모리(virtual memory) 기법.
✦   GNU, Linux

More Related Content

Similar to Ch22 운영체제 (20)

붶팅
붶팅붶팅
붶팅
QooJuice
Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016
perillamint
OSS SW Basics Lecture 14: Open source hardware
OSS SW Basics Lecture 14: Open source hardwareOSS SW Basics Lecture 14: Open source hardware
OSS SW Basics Lecture 14: Open source hardware
Jeongkyu Shin
System+os study 1
System+os study 1System+os study 1
System+os study 1
J J
Main Variable Program
Main Variable ProgramMain Variable Program
Main Variable Program
경섭 심
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
Covenant Ko
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario ChoLinux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Mario Cho
6. code level reversing
6. code level reversing6. code level reversing
6. code level reversing
Youngjun Chang
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
ymtech
Let's geek! (1)
Let's geek! (1) Let's geek! (1)
Let's geek! (1)
nerdsday
01. Computer System Basics with C Language
01. Computer System Basics with C Language01. Computer System Basics with C Language
01. Computer System Basics with C Language
jeff8272
[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유
Hwan Min
사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본
Dong Hwa Jeong
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCP
Seungmo Koo
안드로이드 플랫폼 설명
안드로이드 플랫폼 설명안드로이드 플랫폼 설명
안드로이드 플랫폼 설명
Peter YoungSik Yun
cross compile
cross compilecross compile
cross compile
he4722
[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표
sung ki choi
[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp
진현 조
Maker 오해와 진실
Maker 오해와 진실Maker 오해와 진실
Maker 오해와 진실
유명환 FunFun Yoo
IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명
JungWoon Lee
Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016
perillamint
OSS SW Basics Lecture 14: Open source hardware
OSS SW Basics Lecture 14: Open source hardwareOSS SW Basics Lecture 14: Open source hardware
OSS SW Basics Lecture 14: Open source hardware
Jeongkyu Shin
System+os study 1
System+os study 1System+os study 1
System+os study 1
J J
Main Variable Program
Main Variable ProgramMain Variable Program
Main Variable Program
경섭 심
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
Covenant Ko
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario ChoLinux Kernel Boot Process , SOSCON 2015, By Mario Cho
Linux Kernel Boot Process , SOSCON 2015, By Mario Cho
Mario Cho
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
ymtech
Let's geek! (1)
Let's geek! (1) Let's geek! (1)
Let's geek! (1)
nerdsday
01. Computer System Basics with C Language
01. Computer System Basics with C Language01. Computer System Basics with C Language
01. Computer System Basics with C Language
jeff8272
[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유
Hwan Min
사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본
Dong Hwa Jeong
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCP
Seungmo Koo
cross compile
cross compilecross compile
cross compile
he4722
[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표
sung ki choi
[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp
진현 조
IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명
JungWoon Lee

More from Kyungryul KIM (20)

Meteor ddp
Meteor ddpMeteor ddp
Meteor ddp
Kyungryul KIM
Cocos2dx 7.1-7.2
Cocos2dx 7.1-7.2Cocos2dx 7.1-7.2
Cocos2dx 7.1-7.2
Kyungryul KIM
ᅥᆫᄆƮᆫƥᆷᆨᄀƵᄉƮᆯᅩᅥᆫ
ᅥᆫᄆƮᆫƥᆷᆨᄀƵᄉƮᆯᅩᅥᆫᅥᆫᄆƮᆫƥᆷᆨᄀƵᄉƮᆯᅩᅥᆫ
ᅥᆫᄆƮᆫƥᆷᆨᄀƵᄉƮᆯᅩᅥᆫ
Kyungryul KIM
서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2
Kyungryul KIM
Chaper24 languages high_and_low
Chaper24 languages high_and_lowChaper24 languages high_and_low
Chaper24 languages high_and_low
Kyungryul KIM

Ch22 운영체제

  • 2. 소프트웨어 ✦ 최초 전원이 들어오는 경우 랜덤한 의미없 는 값을 가짐 ✦ 인텔 8080 프로세서는 0000h 주소에서 기계 어 코드를 읽음.
  • 3. 입력 ✦ 제어판을 이용 RAM에 작성후 읽는 방법 ✦ Reset on -> 마이크로로세스 실행중단 ✦ Takeover on ✦ 주소(A0~A15) + 데이터(D0~D7) ✦ Write on/off ✦ Takeover off ✦ Reset off
  • 5. 초기화 코드 (initialization code) 1. 스택포인터 설정 2. 영상표시장치 20h 로 초기화 및 커서 위치 설정. 3. 인터럽트 활성화 EI(Enable Interrupt) 4. HLT
  • 6. 키보드 1. 키입력 2. 마이크로프로세서의 인터럽트 신호 발생 3. 키보드 처리 프로그램에서 IN 명령으로 키 판단 4. 키 처리 5. RET 명령어로 HLT로 복귀.
  • 7. 키입력 처리 ✦ 입력키가 문자, 숫자, 구두점에 해당되면, 키보드 스캔 코드을 이용하여 Shift키가 눌렸 는지 여부를 확인하여 정확한 ASCII 부호를 결정. ✦ 영상표시장치에 커서 위치 메모리에 기록. ✦ 키입력을 반향(echo)시킨다라고 함.
  • 8. 키보드 처리 프로그램 (추가 명령) ✦ W, D, R ✦ W 1020 35 4F 78 23 9B AC 67 ; Write ✦ D 1030 ; Display ✦ R 1000 ; Run
  • 9. ROM ✦ 초기화 코드, 각종 처리 프로그램을 제어판 을 이용하여 입력하지 말고, 키보드를 이용. ✦ 전원을 꺼도 저장되도록 읽기 전용 메모리 (ROM)에 저장. ✦ 8080 -> ROM 을 0000h 주소로 설정.
  • 10. 디스크 ✦ 프로그램과 데이터를 디스크에 저장 ✦ 전원이 꺼지면 데이터가 사라지는 RAM보다 안전하며, ROM에 저장하는 것보다 쉽게 변 경 가능
  • 11. 파일 시스템 ✦ S 2080 2 15 3 ; Store ✦ L 2080 2 15 3 ; Load ✦ 디스크 저장장치에 있는 데이터가 파일의 형 태를 가지도록 만드는 방법.
  • 12. 운영체제 ✦ 파일 시스템, 키보드 처리 프로그램과 명령 어 처리기... 운영체제의 일부.
  • 13. CP/M ✦ CP/M (Control Program for Micros) ✦ 8080 마이크로프로세서 ✦ 게리 킬달 ✦ 8인치 단면 디스켓 ✦ 77트랙, 트랙당 26섹터, 섹터당 128바이트 ✦ 총 256,256 바이트
  • 14. 붶팅 ✦ ROM에는 부트스트랩 로더(bootstrap loader) 를 설치. ✦ 로더는 디스켓에서 맨 처음 128바이트를 수 행. ✦ 이 디스켓 섹터에는 나머지 CP/M을 로딩하 는 프로그램이 있음.
  • 15. CP/M 메모리 배치 상태 ✦ 기초 입출력 시스템(BIOS), 기본 디스크 운영 체제(BDOS), 콘솔 명령어 처리기(CCP)는 약 6KB 정도. ✦ 전체 64KB에서 임시 프로그램 영역(TPA)가 58KB 차지. ✦ 초기 TPA에는 어떤 프로그램도 로딩되어 있지 않음.
  • 16. CCP, TPA ✦ 콘솔은 키보드와 화면을 통칭하는 말 ✦ 프롬프트(prompt) A> ✦ DIR, DIR *.TXT, ERA *.TXT, TYPE A.TXT ✦ 인식할 수 없는 명령어인 경우 저장된 다른 프로그램 이름이라 추정. ✦ 0100h TPA영역에 로딩, 수행함. ✦ ED, PIP 는 제공, 워드프로세서... 구입.
  • 17. API ✦ 운영체제는 컴퓨터 하드웨어에 쉽게 접근할 수 있는 프로그램을 제공해줌. ✦ 이러한 접근 방법을 응용프로그램 인터페이스(API) 라고 함. ✦ MVI C, 16h CALL 5 ; create empty file ✦ 메모리 0005h 번지에는 CP/M에 의해 설정된 JMP 명령어가 있어 BIOS 서브루틴으로 분기. ✦ API는 컴퓨터 하드웨어에 대한 장치 독립적 인터페 이스를 제공.
  • 18. DOS ✦ 팀 패터슨이 만든 QDOS(Quick and Dirty Operating System)을 마이크로소프트사가 라이선스 함 ✦ 이후 IBM 이 MS-DOS 를 라이선스 함. ✦ MS는 FAT 방식 개발/도입. ✦ INT 21h 제공. ✦ MS-DOS 2.0 은 계층적 파일 시스템 제공.
  • 19. UNIX ✦ 1970년대 초반 벨연구소의 켄 톰슨과 데니스 리치가 개발. ✦ 시분할(timesharing) 기법을 이용한 멀티 태스킹 운영체제. ✦ 가상 메모리(virtual memory) 기법. ✦ GNU, Linux