Computer Science 17

[네트워크/Network] SSL 통신 과정

HTTP는 HyperText Transfer Protocol 의 약자로 인터넷 상에서 데이터를 주고 받을 수 있는 프로토콜이다. HTTP는 따로 암호화 과정을 거치지 않아 중간에 패킷을 탈취당할 수 있다. 이를 보완하기 위한 것이 HTTPS이고, 쉽게 말해 HTTP에 보안 계층을 추가한 것이다. SSL/TLS SSL Secure Socket Layer 의 약자로 클라이언트와 서버 간 보안을 위한 프로토콜이다. 1.0은 대중에게 공개되지 않고 2.0부터 공개됐는데 몇 가지 취약점 때문에 1년 만에 SSL 3.0으로 대체되었다고 한다. TLS SSL 3.0을 표준화한 프로토콜이 TLS (Transport Layer Security)이다. SSL 3.0과 극적인 차이가 있는 것은 아니지만 둘은 서로 상호 운용..

[운영체제/Operating System] 파일 시스템 구현

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. File Systems Implementation Allocation of File Data in Disk Contiguous Allocation Linked Allocation Indexed Allocation Contiguous Allocation (사진 출처 - questionsolves) 장점 fast I/O 한 번의 seek/rotation 많은 바이트 transfer realtime file 용으로, 혹은 이미 실행 중이던 프로세스의 swapping 용 direct access (= random access) 가능 단점 external fragmentation (hole 발생) file grow가 어려움 파일 크기가 커질 것..

[운영체제/Operating System] 파일 시스템

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. File Systems File and File System File A named collection of related information 일반적으로 비휘발성의 보조기억장치에 저장 (하드디스크) 운영체제는 다양한 저장 장치를 file 이라는 동일한 논리적 단위로 볼 수 있게 해줌 operation create, read, write, reposition (lseek), delete, open, close 등 File attribute (= metadata) 파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들 파일 이름, 유형, 저장된 위치, 접근 권한, 소유자 등 File system 운영체제에서 파일을 관리하는 부분 파..

[운영체제/Operating System] 가상 메모리

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. Virtual Memory Demand Paging 페이지가 요청됐을 때 메모리에 올리는 것 I/O 양의 감소 메모리 사용량 감소 빠른 응답 시간 더 많은 사용자 수용 Valid / Invalid bit 사용 invalid 사용되지 않는 주소 영역인 경우 페이지가 메모리에 올라와있지 않고 backing store에 있는 경우 처음에는 모든 페이지 엔트리가 invalid로 초기화 page fault 요청한 페이지가 메모리에 없는 경우 = 페이지 테이블에 invalid로 세팅되어 있는 경우 CPU가 운영체제에게 넘어감 (일종의 SW interrupt) Page Fault invalid page를 접근하면 MMU가 trap을 발생시킴 (pa..

[운영체제/Operating System] 메모리 관리

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. Memory Management Logical Address vs Physical Address 메모리는 주소를 통해 접근하는 매체이다. Logical address (= virtual address) 프로세스마다 독립적으로 갖는 주소 공간 각 프로세스마다 0번지부터 시작 CPU가 바라보는 주소는 logical address Physical address 메모리에 실제 올라가는 위치 아랫 부분에는 운영체제 커널이, 윗 부분에는 여러 프로그램들이 섞여서 올라가 있음 특정한 프로그램이 물리적인 메모리 어디에 올라갈 지 결정하는 것을 주소 바인딩이라고 한다. 주소 바인딩 (Address Binding) Compile time binding ..

[운영체제/Operating System] 교착 상태 (Deadlock)

"KOCW - 반효경 교수님의 운영체제" 를 듣고 정리한 내용입니다. Deadlocks 교착상태 (Deadlock) Deadlock 일련의 프로세스들이 서로가 가진 자원을 기다리며 block된 상태 Resource 하드웨어, 소프트웨어 등을 포함하는 개념 ex) I/O device, CPU cycle, memory space, semaphore 등 프로세스가 자원을 사용하는 절차 Request → Allocate → Use → Release Example 시스템에 2개의 tape drive가 있는데 프로세스 A와 B가 각각 하나의 tape drive를 보유한 채 다른 하나를 기다리는 경우 Binary semaphores A and B 프로세스 0이 A를 획득한 상황에서 CPU가 프로세스 1에게 할당되고,..