CS/면접준비
-
[컴구] - CPU 동작 원리CS/면접준비 2022. 9. 30. 16:04
CPU 1. 연산 장치 산술연산과 논리연산 수행 (따라서 산술논리연산장치라고도 불림) 연산에 필요한 데이터를 레지스터에서 가져오고, 연산 결과를 다시 레지스터로 보냄 2. 제어 장치 명령어를 순서대로 실행할 수 있도록 제어하는 장치 주기억장치에서 프로그램 명령어를 꺼내 해독하고, 그 결과에 따라 명령어 실행에 필요한 제어 신호를 기억장치, 연산장치, 입출력장치로 보냄 장치가 보낸 신호를 받아, 다음에 수행할 동작을 결정함 3. 레지스터 고속 기억장치임 명령어 주소, 코드, 연산에 필요한 데이터, 연산 결과 등을 임시로 저장 용도에 따라 범용 레지스터와 특수목적 레지스터로 구분됨 범용 레지스터 : 연산에 필요한 데이터나 연산 결과를 임시로 저장 특수목적 레지스터 : 특별한 용도로 사용하는 레지스터 MAR(..
-
[컴구] - 컴퓨터 기초CS/면접준비 2022. 9. 30. 15:47
HardWare의 기본 구조 Process 처리를 위한 Flow Computer는 Program을 동작시키 위한 Process를 실행시키기 위해서는 Memory를 사용 Memory를 효율적으로 사용하기 위해 Virutal Memory를 사용 MMU를 통해 Virtual Memory -> Physical Memory로 변경 Virtual Memory를 더 빠르게 변경하기 위해 TLB를 구성 CPU와 Main Memory의 속도 차이를 줄여 주기 위해 Cache Memory가 존재
-
[컴구] - 컴퓨터의 구성CS/면접준비 2022. 9. 30. 15:41
컴퓨터 구성 컴퓨터는 기본적으로 읽고 처리한 뒤 저장하는 과정으로 이루어짐 Hardware 컴퓨터를 구성하는 기계적 장치 1. 중앙처리 장치(CPU) Processor라고 불린다. 프로그램 명령어와 데이터를 읽어와 처리하고 명령어의 수행 순서를 제어 비교와 연산 산술논리연산장치(ALU)+명령어의 해석과 실행을 담당하는 제어장치+속도가 빠른 데이터 기억장소인 레지스터로 구성 2. 기억 장치 프로그램, 데이터, 연산의 중간 결과를 저장하는 장치 주기억 장치 = Main Memory라고도 불리며 RAM , ROM / Program이 필요한 데이터를 임시 저장 보조 기억 장치 = Disk라고 불리며 주기억 장치에 비해 속도는 느리지만, 자료 영구 보관 3. System Bus Hardware를 물리적으로 연결하..
-
[OS] - File SystemCS/면접준비 2022. 9. 30. 15:07
File System 컴퓨터에서 파일이나 자료를 쉽게 발견할 수 있도록, 유지 및 관리하는 방법이다. 저장매체에는 수많은 파일이 있기 때문에, 이런 파일들을 관리하는 방법을 말한다. 특징 Kernel에서 동작 CRUD 기능을 수행 계층적 Directory 구조 Disk Partition별로 하나씩 둘 수 있다. 역할 File management 보조 저장소 관리 파일 무결성 접근 방법 제공 목적 Disk와 Main memory의 속도 차이를 줄이기 위함 File 관리 Disk의 효율적인 사용 구조 Metadata+data Metadata = Data 영역에 기록된 File의 Name, location, 크기, Time, 삭제 유무 Data = File Data 파일을 구성하는 레코드들이 보조기억장치에 편..
-
[OS] - MemoryCS/면접준비 2022. 9. 30. 14:26
Memory Main Memory 주 기억장치라고도 불린다. CPU가 직접 Access 가능한 기억장치 Process가 실행되려면, Program이 Memory에 올라와야 한다. Cpu는 Register가 지시하는데로 Memory에 접근하여 수행할 명령어를 가져온다. 명령어 수행 시 Memory에 필요한 Data가 없다면, 데이터를 가져와야 한다. 이 때 도움을 주는 것이 MMU MMU ( Memory management Unit ) Logical Address -> Physical Address로 변경하여 준다. Memory 보호, Cache 관리, Cpu Memory 접근 을 관리하여 준다. Base+Limit을 활용하여 접근가능한 메모리의 영역을 알고 이외의 영역에 접근 시 Trap이 발생 안정성을..
-
[OS] - Paging AlgorithmCS/면접준비 2022. 9. 30. 12:49
Paging Change Algorithm 요청하는 Page가 Main Memory에 없다면(Page Fault) -> 새로운 Page 할당 -> 할당된 Page 중에서 어떤 것을 Main Memory에서 내려서 사용할 것인가? Virtual Memory는 필요한 Page만 Memory에 적재한다. 그럼에도 Main Memory가 가득 찰 수 있다. 가득차게 된다면 안쓰는 Page는 Out 하고 요청한 Page를 In해야 한다. 이 때 Page Out되는 Page를 Victim Page라고 하며, 수정이 되지 않은 Page를 우선으로 하여 Page Out한다. ( 수정되면 Disk 작업이 필요하다 ) Page Reference String Cpu는 Logical Address를 통해 특정 Address를..
-
[OS] - Paging / SegmentationCS/면접준비 2022. 9. 30. 12:37
Paging , Segmentation Multi Programming에서 여러 Process를 수용하기 위해 Main Memory를 분할하여 Memory 관리 관리 방식 1. Continuous Memory 관리 Program 전체가 하나의 커다란 공간에 연속적으로 할당 고정 분할 : Internal fragmentation 동적 분할 : External fragmentation 2. Non Continuous Memory 관리 Program 일부가 서로 다른 Address 공간에 할당 Page = Process를 고정 사이즈로 분할 Frame = Page와 동일한 크기로 Main Memory 분할 Fragmentation = Hole Space , data가 여러 조각으로 나누어지는 현상 Segmen..
-
[OS] - Semaphore / MutexCS/면접준비 2022. 9. 30. 00:09
Semaphore MultiProgramming 환경에서 Shared Resource에 대한 접근을 제한 Shared Resource에 여러 Process가 동시에 접근하면서, 문제가 발생 할 수 있다. Resource에는 그렇기에 하나의 Process만 접근이 가능하다. Critical Section 여러 Process가 data를 Share하면 수행 할 때, 각 Process에서 Shared Data를 접근하는 코드 부분 Shared Data를 여러 Process 가 접근하면 잘못된 결과가 발생 할 수 있다. Semaphore P,V P : Critical Section에 들어가기 전에 수행 V : Critical Section에서 나올 때 수행 #SemaPhore P(S) # Critical Sec..