책내용이 너무 좋아서 학생들에게 특강교재로
사용하고 있습니다.
그런데 혹시 강의자료가 있으시면 주실수 있으실런지
전 공업고등학교 컴퓨터학과 교사입니다.
저작권때문에 힘들다고 하시면 어쩔수 없고요
프로그래머라면 반드시 알아야 할 원리들만 모아 그림으로 담았다
프로그래머들이 반드시 알아두어야 할 동작 원리(컴퓨터 구조, 운영체제, 네트워크 등)를 구체적인 사례 및 도식과 함께 설명함으로써 기본이 약한 전공자나 초보 프로그래머들이 원리를 충분히 이해할 수 있도록 도와준다.
1부. 하드웨어 01장. 모든 정보를 2진수로 표현하는 컴퓨터 01. 왜 2진수로 표현할까 02. 진법과 진수 이해하기 03. 컴퓨터에서 문자 표현하기 04. 컴퓨터에서 정수 표현하기 05. 컴퓨터에서 실수 표현하기 02장. 컴퓨터 내부에서의 정수 연산과 실수 연산 01. 정수의 덧셈과 뺄셈 02. 정수의 곱셈 03. 정수의 나눗셈 04. 실수의 덧셈과 뺄셈 05. 실수의 곱셈 03장. 프로그램을 실행하는 CPU 01. 컴퓨터의 구성 02. CPU의 구성 03. CPU 동작 예 04. 명령어의 다양한 표현 형식 05. CPU가 기본 명령어를 실행하는 동작 특별코너: C 언어 프로그램에 대한 실제 명령어와 동작 04장. CPU 속도를 빠르게 하는 파이프라이닝과 수퍼스칼라 01. 파이프라이닝 02. 수퍼스칼라 05장. 계층적으로 구성된 메모리 01. 메모리의 계층 구조 02. 실행중인 프로그램을 저장하는 메인 메모리 03. 처리 속도를 향상시키는 캐시 메모리 06장. 여러 개의 CPU로 구성된 멀티프로세서 01. 멀티프로세서란 02. 멀티프로세서의 분류 03. 캐시 일관성 유지하기 04. 클러스터링 2부. 운영체제 07장. 실행중인 프로그램인 프로세스 01. 프로세스란 02. 프로세스의 다양한 상태 03. 프로세스 생성 특별코너: 리눅스에서의 프로세스 제어 블록 특별코너: 리눅스에서의 프로세스 상태 08장. 프로세스의 실행 순서를 정하는 프로세스 스케줄링 01. 프로세스 스케줄링이란 02. FCFS 스케줄링 03. 라운드 로빈 스케줄링 04. 우선순위 스케줄링 특별코너: 리눅스에서의 스케줄링 09장. 프로세스 동기와 통신 01. 프로세스 동기와 통신이란 02. 프로세스 동기 방법 03. 프로세스간 통신 방법 10장. 메모리 관리하기 01. 가상 메모리란? 02. 페이징 03. 세그멘테이션 04. 페이징과 세그멘테이션의 혼용 특별코너: 메모리 관리를 위한 리눅스 데이터 구조 11장. 디스크에 파일 저장하기 01. 디스크에 파일을 저장하는 파일 시스템 02. 윈도우의 파일 저장하기 03. 유닉스(리눅스)의 파일 저장하기 특별코너: 리눅스에서의 수퍼 블록과 inode 3부. 네트워크 12장. 네트워크를 통한 데이터 전송 과정 01. 네트워크 환경 02. 데이터 전송의 시작은 애플리케이션에서 03. 포트 번호 등을 추가하는 TCP와 UDP 04. IP 주소 등을 추가하는 IP 05. 라우팅 테이블을 이용해서 데이터 보낼 곳의 IP 주소 정하기 06. MAC 주소 등을 추가하는 IP 07. 라우터를 경유해서 수신 LAN 라우터로 08. 수신 LAN 라우터에서 목적지로 09. 최종 목적지에서 특별코너: 네트워크 프로그램 작성하기 13장. 네트워크 주소 01. IP 주소 02. 하나의 네트워크를 여러 네트워크로 나누는 서브넷 03. 기억하기 쉬운 도메인명 특별코너: 도메인명을 이용한 네트워크 프로그램 14장. 네트워크에서의 오류 검출과 오류 정정 01. 오류 검출하기 02. 오류 정정하기