Jost Do It.

그냥 IT해.

반응형

컴퓨터공학 7

[컴퓨터] 그림으로 배우는 네트워크 원리, Gene

기초 내용부터 고급 내용까지 한번에 맛볼 수 있는 책 별점: ★★★★ 컴퓨터를 업으로 일하고 있지만 네트워크 수업을 듣지 않아 한번씩 배움의 갈증을 느끼고 있었다. 그러던 중 그림으로 쉽게 이해되게 네트워크를 설명하는 책이 있다고 지인이 추천해줘서 읽게 됐다. 처음에는 기본 개념들만을 소개한 책이 아닐까 생각했는데 생각보다 자세하게 설명해주고 있다. 특히 개념 옆에는 적절한 그림들과 예시 사진들이 있어서 이론 뿐만 아니라 실제로는 어떻게 적용되는지도 이해하는데 도움을 많이 받았다. 좀더 심화과정과 어떻게 적용되는지를 파악하려면 더 공부해야겠지만 네트워크 맛보기로 읽어보기에는 딱 좋은 책이라고 생각한다. 추상적인 설명보단 구체적으로 풀이하는 내용들이 많아 네트워크를 아예 모르는 분들은 내용이 어려울 수도 ..

취미/독서 2024.01.22

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 13 교착 상태

Chapter 13. 교착 상태 요약 교착 상태의 정의와 발생 원인을 학습하고, 이를 해결하는 방법에 대해 알 수 있었다. 내용 정리 13-1. 교착 상태란 교착 상태(deadlock) 두 개 이상 프로세스가 각자 자원을 점유하고, 서로의 자원을 요구할 때에 더 이상 프로세스 진행이 불가해진다. 즉, 서로의 종료만을 기다리며 진행이 멈춰버릴 때 교착 상태가 발생한다. 식사하는 철학자 문제(dining philosophers problem) 교착상태를 잘 설명하는 예시 철학자는 프로세스 또는 쓰레드, 포크는 자원, 생각하는 행위는 자원을 기다리는 것으로 이해할 수 있다. 포크는 한 번에 한 스레드에만 접근할 수 있으니 임계 구역으로 생각할 수 있다. 식사하는 철학자 문제 과정 모든 철학자는 원형 테이블에 ..

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 12 프로세스 동기화

Chapter 12. 프로세스 동기화 요약 프로세스 동기화의 의미와 다양한 기법들에 대해 알 수 있었다. 내용 정리 12-1. 동기화란 동기화의 의미 프로세스 동기화(synchronization) 프로세스 사이 수행 시기를 설정하는 것 동시다발적으로 실행되는 프로세스들은 독립적이거나, 서로 정보를 주고받고 협력할 수 있다. 서로 영향을 주는 프로세스들은 실행 순서와 자원 사용의 일관성을 보장해야 하기에 동기화 돼야 한다. 참고> 프로세스 뿐 아니라 스레드도 동기화의 대상이다. 즉, 실행의 흐름을 갖는 모든 것은 동기화 대상이다. 프로세스 동기화 시 요구조건 실행 순서 제어: 프로세스를 올바른 순서로 실행 상호 배제: 동시에 접근하면 안되는 자원에 하나의 자원만 접근할 수 있도록 하기 1. 실행 순서 제어..

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 11 CPU 스케줄링

Chapter 11. CPU 스케줄링 요약 CPU 스케줄링의 개념과 방법들에 대해 공부할 수 있었다. 내용 정리 11-1. CPU 스케줄링 개요 CPU 스케줄링 CPU 스케줄링 (CPU scheduling) 운영체제가 프로세스들에게 정해진 규칙으로 CPU 자원을 배분하는 것 CPU 스케줄링에 따라 컴퓨터 성능에 큰 영향을 미침 반드시 실행되야 할 프로그램이 적절히 실행되야 함 급한 프로세스는 우선 실행되고, 급하지 않은 프로세스들은 차선으로 실행할 수 있어야 함 프로세스에 CPU 자원 배분이 질서적으로 가능해야 함 프로세스 우선순위 프로세스 프로세스는 일의 중요도에 따라 우선순위가 존재한다. 우선순위가 높은 프로세스: 우선순위가 낮은 프로세스들 보다 빨리 처리 되야 하는 프로세스 프로세스는 실행 상태와 ..

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 10 프로세스와 스레드

Chapter 10. 프로세스와 스레드 요약 운영체제가 프로세스를 관리하는 방식을 알 수 있었고, 프로세스와 스레드의 차이에 대해 배울 수 있었다. 내용 정리 10-1. 프로세스 개요 프로세스(process) 보조기억장치에 저장된 프로그램을 메모리에 적재하고 실행할 때의 프로그램 프로세스를 생성한다 고 표현함 프로세스 확인하기 윈도우: 작업 관리자 -> 프로세스 탭 유닉스 체계: ps 명령어 프로세스 유형 포그라운드 프로세스(foreground process): 사용자가 보는 앞에서 실행되는 프로세스 백그라운드 프로세스(background process): 사용자가 보지 못하는 뒤편에서 실행되는 프로세스 사용자와 상호작용하는 백그라운드 프로세스와 그렇지 않은 프로세스가 있다. 데몬(demon): 유닉스 ..

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 9 운영체제 시작하기

Chapter 9. 운영체제 시작하기 요약 운영체제의 개요와 운영체제가 하드웨어의 시스템을 어떻게 통제하는지 이해할 수 있었다. 내용 정리 09-1. 운영체제를 알아야 하는 이유 운영체제란 운영체제(Operating system) 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 프로그램 시스템 자원: 프로그램 실행에 필요한 요소들로 줄여서 자원이라고도 부름 근본 프로그램이기 때문에 컴퓨터가 부팅될 때 메모리의 커널 영역 내에 따로 적재돼 실행된다. 커널 영역(kernel space): 운영체제가 메모리에 적재되는 공간 사용자 영역(user space): 커널 영역을 제외한 영역으로 사용자가 이용하는 응용 프로그램이 적재되는 공간 응용 프로그램(application softw..

[컴퓨터 구조] 혼자 공부하는 컴퓨터구조 + 운영체제 Chapter 2 데이터

Chapter 2. 데이터 요약 컴퓨터가 데이터를 읽어들이고 이를 이해하고 표현하는 방식에 대해서 학습할 수 있었다. 내용 정리 02-1. 0과 1로 숫자를 표현하는 방법 (1) 정보 단위 비트(bit): 컴퓨터가 이해하는 가장 작은 정보 단위로 0과 1을 나타낸다. 이후의 정보들은 여러 비트의 조합으로 나타내게 된다. 1비트는 0과 1, 두 가지 정보를 표현할 수 있다. n비트는 2^n의 정보를 표현할 수 있다 (2 * 2 * 2 * .... * 2로 0과 1의 정보 2개를 n군데서 표현할 수 있음). 바이트(byte): 8개의 비트가 묶인 단위이다. 표현할 수 있는 정보량은 2^8 (256)개 이다. 킬로바이트(kB, Kilobyte): 1바이트를 1,000개 묶은 단위 메가바이트(MB, Megaby..

반응형