SlideShare 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

What's hot

A look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
A look into the sanitizer family (ASAN & UBSAN) by Akul PillaiA look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
A look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
Cysinfo Cyber Security Community
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-base
Abdoulaye Dieng
 
Q2.12: Debugging with GDB
Q2.12: Debugging with GDBQ2.12: Debugging with GDB
Q2.12: Debugging with GDB
Linaro
 
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
Linaro
 
Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequenceHoucheng Lin
 
PHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイントPHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイント
Yoshio Hanawa
 
Introduction to Modern U-Boot
Introduction to Modern U-BootIntroduction to Modern U-Boot
Introduction to Modern U-Boot
GlobalLogic Ukraine
 
History of CPU Architecture
History of CPU ArchitectureHistory of CPU Architecture
History of CPU Architecture
Tim Hall
 
Page reclaim
Page reclaimPage reclaim
Page reclaim
siburu
 
コンピュータシステムの理論と実装1
コンピュータシステムの理論と実装1コンピュータシステムの理論と実装1
コンピュータシステムの理論と実装1
H T
 
History of computers
History of computersHistory of computers
History of computers
Yong Heui Cho
 
Memory model
Memory modelMemory model
Memory model
Yi-Hsiu Hsu
 
LCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platformLCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platform
Linaro
 
Linux Usb overview
Linux Usb  overviewLinux Usb  overview
Linux Usb overview
Satyam Sharma
 
Lcu14 306 - OP-TEE Future Enhancements
Lcu14 306 - OP-TEE Future EnhancementsLcu14 306 - OP-TEE Future Enhancements
Lcu14 306 - OP-TEE Future Enhancements
Linaro
 
U-Boot presentation 2013
U-Boot presentation  2013U-Boot presentation  2013
U-Boot presentation 2013
Wave Digitech
 
2021 10-12.linx device-tree
2021 10-12.linx device-tree2021 10-12.linx device-tree
2021 10-12.linx device-tree
Shin-ya Koga
 
Why You Should Use TAPIs
Why You Should Use TAPIsWhy You Should Use TAPIs
Why You Should Use TAPIs
Jeffrey Kemp
 
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, ArmXPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
The Linux Foundation
 

What's hot (20)

A look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
A look into the sanitizer family (ASAN & UBSAN) by Akul PillaiA look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
A look into the sanitizer family (ASAN & UBSAN) by Akul Pillai
 
Architecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-baseArchitecture ordinateur-2-architecture-de-base
Architecture ordinateur-2-architecture-de-base
 
Q2.12: Debugging with GDB
Q2.12: Debugging with GDBQ2.12: Debugging with GDB
Q2.12: Debugging with GDB
 
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
HKG18-411 - Introduction to OpenAMP which is an open source solution for hete...
 
Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequence
 
PHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイントPHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイント
 
Introduction to Modern U-Boot
Introduction to Modern U-BootIntroduction to Modern U-Boot
Introduction to Modern U-Boot
 
History of CPU Architecture
History of CPU ArchitectureHistory of CPU Architecture
History of CPU Architecture
 
Page reclaim
Page reclaimPage reclaim
Page reclaim
 
コンピュータシステムの理論と実装1
コンピュータシステムの理論と実装1コンピュータシステムの理論と実装1
コンピュータシステムの理論と実装1
 
History of computers
History of computersHistory of computers
History of computers
 
Memory model
Memory modelMemory model
Memory model
 
LCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platformLCU14 302- How to port OP-TEE to another platform
LCU14 302- How to port OP-TEE to another platform
 
Linux Usb overview
Linux Usb  overviewLinux Usb  overview
Linux Usb overview
 
Lcu14 306 - OP-TEE Future Enhancements
Lcu14 306 - OP-TEE Future EnhancementsLcu14 306 - OP-TEE Future Enhancements
Lcu14 306 - OP-TEE Future Enhancements
 
U-Boot presentation 2013
U-Boot presentation  2013U-Boot presentation  2013
U-Boot presentation 2013
 
PCI Drivers
PCI DriversPCI Drivers
PCI Drivers
 
2021 10-12.linx device-tree
2021 10-12.linx device-tree2021 10-12.linx device-tree
2021 10-12.linx device-tree
 
Why You Should Use TAPIs
Why You Should Use TAPIsWhy You Should Use TAPIs
Why You Should Use TAPIs
 
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, ArmXPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
XPDDS18: The Art of Virtualizing Cache Maintenance - Julien Grall, Arm
 

Viewers also liked

운영 체제 Sig
운영 체제 Sig운영 체제 Sig
운영 체제 SigYoungGun Na
 
루트(root)에 대해
루트(root)에 대해루트(root)에 대해
루트(root)에 대해
licubeclub
 
운영체제 Chapter1
운영체제 Chapter1운영체제 Chapter1
운영체제 Chapter1
YoungGun Na
 
150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은
jieun kim
 
프로세스
프로세스프로세스
프로세스xxbdxx
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
doo rip choi
 

Viewers also liked (7)

운영 체제 Sig
운영 체제 Sig운영 체제 Sig
운영 체제 Sig
 
Ch7
Ch7Ch7
Ch7
 
루트(root)에 대해
루트(root)에 대해루트(root)에 대해
루트(root)에 대해
 
운영체제 Chapter1
운영체제 Chapter1운영체제 Chapter1
운영체제 Chapter1
 
150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은
 
프로세스
프로세스프로세스
프로세스
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
 

Similar to Ch22 운영체제

부팅
부팅부팅
부팅
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
Jinkyoung Kim
 
Main Variable Program
Main Variable ProgramMain Variable Program
Main Variable Program
경섭 심
 
Ch19
Ch19Ch19
Ch19
a1a123
 
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
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
 
[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
 

Similar to Ch22 운영체제 (20)

부팅
부팅부팅
부팅
 
Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016Hideroot - Inc0gnito 2016
Hideroot - Inc0gnito 2016
 
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
 
System+os study 1
System+os study 1System+os study 1
System+os study 1
 
Main Variable Program
Main Variable ProgramMain Variable Program
Main Variable Program
 
Ch19
Ch19Ch19
Ch19
 
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
왜 개발자는 컴퓨터공학을 공부해야 할까? (비전공자는 컴퓨터공학 과목에서 무엇을 알아야할까?)
 
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
 
6. code level reversing
6. code level reversing6. code level reversing
6. code level reversing
 
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
 
Let's geek! (1)
Let's geek! (1) Let's geek! (1)
Let's geek! (1)
 
[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유[KGC2014] DX9에서DX11로의이행경험공유
[KGC2014] DX9에서DX11로의이행경험공유
 
사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본사물인터넷 노트4_라즈베리파이기본
사물인터넷 노트4_라즈베리파이기본
 
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
 
안드로이드 플랫폼 설명
안드로이드 플랫폼 설명안드로이드 플랫폼 설명
안드로이드 플랫폼 설명
 
cross compile
cross compilecross compile
cross compile
 
[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표[아꿈사/110514] 멀티코어cpu이야기 시작발표
[아꿈사/110514] 멀티코어cpu이야기 시작발표
 
[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp[조진현]Kgc2012 c++amp
[조진현]Kgc2012 c++amp
 
Maker 오해와 진실
Maker 오해와 진실Maker 오해와 진실
Maker 오해와 진실
 
IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명IBM DataPower OS(DPOS) 의 CLI 설명
IBM DataPower OS(DPOS) 의 CLI 설명
 

More from Kyungryul KIM

전문검색기술도전
전문검색기술도전전문검색기술도전
전문검색기술도전Kyungryul KIM
 
Nib_NSWindowController
Nib_NSWindowControllerNib_NSWindowController
Nib_NSWindowControllerKyungryul KIM
 
서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2Kyungryul KIM
 
Chaper24 languages high_and_low
Chaper24 languages high_and_lowChaper24 languages high_and_low
Chaper24 languages high_and_lowKyungryul KIM
 

More from Kyungryul KIM (20)

Ch4 pugixml
Ch4 pugixmlCh4 pugixml
Ch4 pugixml
 
Node ch12
Node ch12Node ch12
Node ch12
 
11.scripting
11.scripting11.scripting
11.scripting
 
32 osx app_release
32 osx app_release32 osx app_release
32 osx app_release
 
Meteor ddp
Meteor ddpMeteor ddp
Meteor ddp
 
Cocos2dx 7.1-7.2
Cocos2dx 7.1-7.2Cocos2dx 7.1-7.2
Cocos2dx 7.1-7.2
 
Cocos2 d x-7.3_4
Cocos2 d x-7.3_4Cocos2 d x-7.3_4
Cocos2 d x-7.3_4
 
Cocos2d x-ch5-1
Cocos2d x-ch5-1Cocos2d x-ch5-1
Cocos2d x-ch5-1
 
Coco2d x
Coco2d xCoco2d x
Coco2d x
 
23 drag drop
23 drag drop23 drag drop
23 drag drop
 
Hadoop ch5
Hadoop ch5Hadoop ch5
Hadoop ch5
 
전문검색기술도전
전문검색기술도전전문검색기술도전
전문검색기술도전
 
Nib_NSWindowController
Nib_NSWindowControllerNib_NSWindowController
Nib_NSWindowController
 
Dsas
DsasDsas
Dsas
 
서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2서버인프라를지탱하는기술5 1 2
서버인프라를지탱하는기술5 1 2
 
Chaper24 languages high_and_low
Chaper24 languages high_and_lowChaper24 languages high_and_low
Chaper24 languages high_and_low
 
Mibis ch20
Mibis ch20Mibis ch20
Mibis ch20
 
Mibis ch15
Mibis ch15Mibis ch15
Mibis ch15
 
Mibis ch8
Mibis ch8Mibis ch8
Mibis ch8
 
Mibis ch4
Mibis ch4Mibis ch4
Mibis ch4
 

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