본문 바로가기

분류 전체보기103

[키워드로 풀어본 컴퓨터구조] 03. 메모리(Memory) 메모리(Memory) 컴퓨터에서 말하는 메모리는 기억 소자, 즉 반도체를 의미한다. 반도체는 특성상 전류를 흐르게도 하고 흐르지 않게도 하는 특징이 있다. 이를 이용해서 임시적인 내용들을 기억하게 만드는 것이다. 반도체 기억장치의 기본 요소는 기억 소자(memory cell)이다. 모든 반도체 기억 소자들이 갖는 공통적인 성질이 있다. 두 개의 안정된 상태를 갖는다. 1과 0이다. 상태를 세트할 수 있도록 쓰일 수 있다(write). 상태를 감지할 수 있도록 읽힐 수 있다(read). 쓰는 도악인 경우에는 기억 소자의 상태를 1 또는 0으로 만들어준다는 의미이고, 읽기 동작이라는 것은 그 소자가 갖는 현재 상태가 어떠한 상태인지 알아 오는 개념이다. 기억 장소라는 개념에서 확장하면, 저장 장소라는 개념의.. 2023. 7. 21.
[키워드로 풀어본 컴퓨터구조] 02. 병렬 처리 병렬 처리 병렬 처리는 명령어를 병렬로 동시에 처리하는 것을 의미한다. 실행할 수 있는 코어를 여러 개 두는 방법, 쓰레드를 여러 개 하는 방법, 그리고 기본 명령어를 여러 개 수행시키는 방법이 있다. 최근 멀티코어 등이 더 중요해진 이유는 저전력-그린 IT와 발열문제 해결을 위함이다. 상대적으로 낮은 hz의 CPU Core 다수를 이용하므로 Throughput을 증가시키고 발열을 줄이는 개념이다. 병럴 처리에는 파이프라이닝, 슈퍼스칼라 등의 명령어 전달 방식 차이가 있고, 병렬 컴퓨팅 방식으로 SMP, MMP, LCMP 등이 있다. 기본 명령어 수행 과정에서의 한계 CPU가 하나의 명령(Operation)을 처리할 때는 각각 하나의 클록을 소비하게 된다. 이때 단위 시간에 하나의 명령만 처리할 수 있다.. 2023. 7. 9.
[키워드로 풀어본 컴퓨터구조] 01. CPU(Central Processing Unit) 컴퓨터의 핵심 CPU(Central Processing Unit)와 폰노이만 구조 ▶ 컴퓨터 시스템: 폰노이만 구조 CPU 메모리 디스크 I/O - 명령어/데이터 로드/실행/저장을 순차적으로 수행한다. - 데이터/프로그램 메모리를 하나의 버스로 접근한다. 폰노이만 구조는 중앙처리장치라는 것이 있고, 이 중앙처리장치를 통해서 연산을 수행하게 되는 구조이다. 이 CPU(중앙처리장치)는 각종 연산을 수행하고 기억장치에 기억되어 있는 명령어들을 수행하는 컴퓨터 시스템을 이루는 핵심 부품이다. CPU의 속도 헤르츠와 Clock CPU는 수를 계산하는 칩으로 이해하면 되는데, 그 원리는 덧셈의 원리와 같다. 대개 컴퓨터의 성능을 CPU의 속도, 메모리 용량으로 표현할 수 있는데, CPU의 속도 단위가 헤르츠(Hz).. 2023. 7. 9.
[운영체제] KOCW 12.3 - Ch11: File System Implementation Disk에서 내용이 들어 있는 파일 관리 UNIX: inode MS-DOS: FAT (Linked allocation의 변형) Contiguous allocation Linked allocation Indexed allocation 비어있는 block 관리(Free-Space management) Bit map(Bit vector) Linked list: 빈 공간을 연결함 Grouping: Linked list의 변형 Counting 디렉토리 관리(Directory implementation) Linear list Hash table File system에의 접근 VFS NFS 메모리 디스크 ▶ 운영체제 커널 메모리 File system ▶ 사용자 메모리 Swap area ※ 파일을 읽어와야 할 때 : .. 2023. 6. 10.
[운영체제] KOCW 12.2 - Ch11: File System Implementation Allocation of File Data in Disk: 파일을 디스크에 저장하는 방법 1) Contiguous Allocation(연속 할당) ▷ 단점 External fragmentation(외부조각) File grow가 어려움 (file을 위해 미리 hole을 배당해 둔다면, internal fragmentation(내부조각) 문제가 발생한다.) ▷ 장점 Fast I/O: 데이터가 연속할당 되어 있기 때문에, 한 번의 seek/rotation으로 많은 바이트 transfer --> realtime file, process swapping용으로 쓰인다. Direct access(= random access)(직접접근) 가능하다. 2) Linked Allocation ▷ 장점 External frag.. 2023. 6. 10.
[운영체제] KOCW 12.1 - Ch10: File System File & File System ▶ File A named collection of related information 일반적으로 비휘발성의 보조기억장치에 저장된다. 예) 하드디스크 ▶ File Operation open/close, create, read/write, reposition(Iseek); 파일 접근 위치 수정, delete ▶ File attribute( = metadata) : 파일 자체의 내용이 아니라, 파일을 관리하기 위한 각종 정보들 파일 이름, 유형, 저장된 위치, 파일 사이즈 접근 권한(읽기/쓰기/실행), 시간(생성/변경/사용), 소유자 등 ▶ File system : 운영체제에서 파일을 관리하는 부분 파일 및 파일의 메타데이터, 디렉토리 정보 등을 관리 Directory & .. 2023. 6. 10.
[운영체제] KOCW 11.2 - Ch9: Virtual Memory 캐싱(Caching) : 한정된 빠른 저장공간(캐시; physical memory)을 가지고 계속적으로 요청되는 새로운 객체를 저장공간(swap area; disk)에 읽어들였다가 후속 요청 시 직접 서비스하는 방식 ▷ 캐싱 기법 Paging system Cache memory Buffer caching Web caching ▷ 캐시 운영의 시간 제약 O(n) -- Order of n(n번 비교)는 너무 많다. O(1) -- Order of 1(비교x) ~ O(log n) -- Order of (log n) 정도까지 허용 Clock Algorithm ※ LRU, LFU Algorithm: Paging system에서 이용 불가능하다. Write: reference bit = 1, modified bit .. 2023. 6. 10.
[운영체제] KOCW 11.1 - Ch9: Virtual Memory Paging : 실제로 필요할 때 page를 물리적 메모리에 올리는 것 I/O 양의 감소 Memory 사용량 감소 빠른 응답시간 더 많은 사용자 수용 가능 Physical memory에 없는 Page의 Page table: valid-invalid bit = 0 (Invalid) ▶ valid-invalid bit = 0(Invalid) 사용되지 않는 주소 영역인 경우 page가 물리적 메모리에 없는 경우: swap area(disk) 처음에는 모든 page entry가 invalid로 초기화된다. address translation 시에 invalid bit이 set되어 있으면 --> "page fault" Page Fault 1. invalid page를 접근하면, MMU(주소변환 하드웨어)가 tra.. 2023. 6. 10.
[운영체제] KOCW 10 - Ch8: Memory Management Allocation of Physical Memory ※ 사용자 프로세스 영역의 할당 방법 ▶ Contiguous allocation(연속 할당) Fixed partition(고정분할) 방식 Variable partition(가변분할) 방식 - Register 2개: limit register, relocation register ▶ Noncontiguous allocation(불연속 할당) Paging : logical address --> page table --> physical address - logical address: (page 번호 + page 내의 위치) - page table -- Problem: page table 엔트리가 너무 많이 필요하다 --> Solution: 다단계 pagi.. 2023. 6. 10.