상세정보
미리보기
혼자 공부하는 컴퓨터 구조+운영체제
- 저자
- 강민철 저
- 출판사
- 한빛미디어
- 출판일
- 2022-08-08
- 등록일
- 2023-01-05
- 파일포맷
- PDF
- 파일크기
- 43MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
혼자 해도 충분합니다! 1:1 과외하듯 배우는 IT 지식 입문서
이 책은 독학으로 컴퓨터 구조와 운영체제를 배우는 입문자가 ‘꼭 필요한 내용을 제대로 학습’할 수 있도록 구성했다. 뭘 모르는지조차 모르는 입문자의 막연한 마음에 십분 공감하여 과외 선생님이 알려주듯 친절하게, 핵심 내용만 콕콕 집어 준다. <컴푸터 구조>편에서는 컴퓨터를 이루고 있는 부품들과 각 부품의 역할을 알아본다. 또한 컴퓨터 내부의 구조와 작동법을 이해하고, 컴퓨터가 어떻게 명령어를 처리하는지 학습한다. <운영체제>편에서는 운영체제의 필요성을 배운 뒤 앞서 배운 컴퓨터의 부품들을 운영체제가 어떻게 사용하는지 전체 과정을 살펴본다. ‘전공서가 너무 어려워서 쉽게 배우고 싶을 때’, ‘개발자가 되고 싶은데 뭐부터 봐야 하는지 모를 때’ ‘기술 면접을 제대로 준비해야 할 때’ 다른 입문서에서는 알려주지 않았던 진짜 컴퓨터 공학 지식을 <혼자 공부하는 컴퓨터 구조+운영체제>에서 만나 보자!
42명의 베타리더 검증으로, ‘함께 만든’ 입문자 맞춤형 도서
42명의 베타리더와 함께 입문자에게 꼭 맞는 난이도, 분량, 학습 요소 등을 적극 반영했다. 어려운 용어와 개념은 한 번 더 풀어 쓰고, 적절한 예시와 이해하기 쉬운 그림으로 누구나 이해할 수 있도록 구성했다. 또한 일상 소재를 활용한 비유를 활용하여 어렵게 느껴질 수 있는 컴퓨터 구조와 운영체제를 머릿속에 직접 그리듯이 설명해 준다. ‘혼자 공부해 본’ 여러 입문자의 초심과 눈높이가 책 곳곳에 반영된 것이 이 책의 가장 큰 장점이다.
누구를 위한 책인가요?
개발자가 되고 싶어 컴퓨터 구조와 운영체제를 배우려고 하는 비전공자, 일반인
컴퓨터 구조와 운영체제의 기본 용어조차 헷갈리는 학부생
취업을 위해 기술 면접을 봐야 하지만 기초가 부족한 졸업반
컴퓨터의 작동 구조를 제대로 알고 싶은 주니어 개발자
매일 코딩을 하지만 막상 프로그램을 움직이는 하부 기술에 대한 이해가 부족한 개발자
저자소개
리눅스 커널과 클라우드, 보안에 관심이 많은 개발자이자 연구자이다. 취미로 오픈 소스 기여와 버그 헌팅을 하고, 부업으로 온·오프라인 강의를 하고 있다. 강의와 집필로 지식을 나누고, 코드와 논문으로 지식을 발굴하는 삶을 지향하며 훗날 세계 최고의 엔지니어가 되길 꿈꾸고 있다.
목차
Chapter 01 컴퓨터 구조 시작하기
01-1 구조를 알아야 하는 이유
__문제 해결
__성능, 용량, 비용
[2가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
01-2 컴퓨터 구조의 큰 그림
__컴퓨터가 이해하는 정보
__컴퓨터의 4가지 핵심 부품
[7가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 02 데이터
02-1 0과 1로 숫자를 표현하는 방법
__정보 단위
__이진법
__십육진법
[5가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
02-2 0과 1로 문자를 표현하는 방법
__문자 집합과 인코딩
__아스키 코드
__EUC-KR
__유니코드와 UTF-8
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 03 명령어
03-1 소스 코드와 명령어
__고급 언어와 저급 언어
__컴파일 언어와 인터프리터 언어
[좀 더 알아보기] 목적 파일 vs 실행 파일
[6가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
03-2 명령어의 구조
__연산 코드와 오퍼랜드
__주소 지정 방식
[좀 더 알아보기] 스택과 큐
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 04 CPU와 작동 원리
04-1 ALU와 제어장치
__ALU
__제어장치
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
04-2 레지스터
__반드시 알아야 할 레지스터
__특정 레지스터를 이용한 주소 지정 방식(1): 스택 주소 지정 방식
__특정 레지스터를 이용한 주소 지정 방식(2): 변위 주소 지정 방식
[좀 더 알아보기] 상용화된 CPU 속 레지스터 및 주소 지정 방식
[8가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
04-3 명령어 사이클과 인터럽트
__명령어 사이클
__인터럽트
[좀 더 알아보기] 예외의 종류
[5가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 05 CPU 성능 향상 기법
05-1 빠른 CPU를 위한 설계 기법
__클럭
__코어와 멀티 코어
__스레드와 멀티스레드
[5가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
05-2 명령어 병렬 처리 기법 1
__명령어 파이프라인
__슈퍼스칼라
__비순차적 명령어 처리
[3가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
05-3 CISC와 RISC
__명령어 집합
__CISC
__RISC
[3가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 06 메모리와 캐시 메모리
06-1 RAM의 특징과 종류
__RAM의 특징
__RAM의 용량과 성능
__RAM의 종류
[6가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
06-2 메모리의 주소 공간
__물리 주소와 논리 주소
__메모리 보호 기법
[5가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
06-3 캐시 메모리
__저장 장치 계층 구조
__캐시 메모리
__참조 지역성 원리
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 07 보조기억장치
07-1 다양한 보조기억장치
__하드 디스크
__플래시 메모리
[6가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
07-2 RAID의 정의와 종류
__RAID의 정의
__RAID의 종류
[6가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 08 입출력장치
08-1 장치 컨트롤러와 장치 드라이버
__장치 컨트롤러
__장치 드라이버
[2가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
08-2 다양한 입출력 방법
__프로그램 입출력
__인터럽트 기반 입출력
__ DMA 입출력
[6가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 09 운영체제 시작하기
09-1 운영체제를 알아야 하는 이유
__운영체제란
__운영체제를 알아야 하는 이유
[2가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
09-2 운영체제의 큰 그림
__운영체제의 심장, 커널
__이중 모드와 시스템 호출
__운영체제의 핵심 서비스
[좀 더 알아보기] 가상 머신과 이중 모드의 발전
[좀 더 알아보기] 시스템 호출의 종류
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 10 프로세스와 스레드
10-1 프로세스 개요
__프로세스 직접 확인하기
__프로세스 제어 블록
__문맥 교환
__프로세스의 메모리 영역
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
10-2 프로세스 상태와 계층 구조
__프로세스 상태
__프로세스 계층 구조
__프로세스 생성 기법
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
10-3 스레드
__프로세스와 스레드
__멀티프로세스와 멀티스레드
[3가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 11 CPU 스케줄링
11-1 CPU 스케줄링 개요
__ 프로세스 우선순위
__스케줄링 큐
__선점형과 비선점형 스케줄링
[7가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
11-2 CPU 스케줄링 알고리즘
__스케줄링 알고리즘의 종류
[5가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 12 프로세스 동기화
12-1 동기화란
__동기화의 의미
__ 생산자와 소비자 문제
__공유 자원과 임계 구역
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
12-2 공유 자원과 임계 구역
__뮤텍스 락
__세마포
__모니터
[3가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 13 교착 상태
13-1 교착 상태란
__식사하는 철학자 문제
__자원 할당 그래프
__교착 상태 발생 조건
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
13-2 교착 상태 해결 방법
__교착 상태 예방
__교착 상태 회피
__교착 상태 검출 후 회복
[3가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 14 가상 메모리
14-1 연속 메모리 할당
__스와핑
__메모리 할당
__외부 단편화
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
14-2 페이징을 통한 가상 메모리 관리
__페이징이란
__페이지 테이블
__페이징에서의 주소 변환
__페이지 테이블 엔트리
[좀 더 알아보기] 페이징의 이점 - 쓰기 시 복사
[좀 더 알아보기] 계층적 페이징
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
14-3 페이지 교체와 프레임 할당
__요구 페이징
__페이지 교체 알고리즘
__스래싱과 프레임 할당
[4가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
Chapter 15 파일 시스템
15-1 파일과 디렉터리
__파일
__디렉터리
[좀 더 알아보기] 상대 경로를 나타내는 또 다른 방법
[7가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
15-2 파일 시스템
__파티셔닝과 포매팅
__파일 할당 방법
__파일 시스템 살펴보기
[좀 더 알아보기] 저널링 파일 시스템
[좀 더 알아보기] 마운트
[7가지 키워드로 정리하는 핵심 포인트]
[확인 문제]
____정답 및 해설
____찾아보기