전체 글 53

4장 데이터 링크 계층

데이터 링크 계층 네트워크 장비 간의 신호를 주고 받는 규칙을 정하는 계층 랜에서 데이터를 정상적으로 주고받기 위해 필요한 계층 대부분이 이더넷을 사용 CSMA/CD CS : 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 확인 MA : 케이블에 신호가 흐르고 있지 않다면 데이터를 보내도 좋다 CD : 충돌이 발생하고 있는지 확인한다. MAC 제조할 때 새겨지는 물리주소 전세계에서 유일한 번호 48비트로 구성, 앞쪽 24비트는 제조사 번호, 뒤쪽 24비트는 랜카드 일련번호 이더넷 헤더 목적지 MAC(6바이트), 출발지 MAC(6바이트), 유형(2바이트)로 이뤄져 있음 유형은 이더넷으로 전송하는 상위 계층의 프로토콜 종류를 식별하기 위한 16진수 번호이다. 트레일러(FCS) 데이터 전송 도중..

공부/네트워크 2023.04.27

3장 물리 계층 데이터를 전기 신호로 변환하기

물리 계층의 역할과 랜 카드의 구조 전기 신호 아날로그 신호 물결 모양의 전기 신호 전화 회선이나 라디오 방송에서 사용 디지털 신호 막대 모양의 전기 신호 랜 카드 물리 계층인 LAN을 연결하는 장비 0과 1의 비트열 데이터를 전기 신호로 변환하여 전송 전기 신호를 0과 1의 비트열 데이터로 변환하여 수신 케이블의 종류(전송 매체) 데이터가 흐르는 물리적인 선로 유선으로 트위스트 페어 케이블, 광케이블이 있다. 무선으로는 라디오파, 마이크로파 등이 있다. 트위스트 페어 케이블 UTP 케이블(비차폐 케이블) 구리선 여덟 개를 두개씩 꼬아 만든 네 쌍의 전선 실드로 보호되어 있지 않은 케이블 실드는 금속 호일이나 금속 매듭과 같은 것으로 노이즈를 막는 역할 저렴함 STP 케이블(차폐 케이블) 실드로 보호한 ..

공부/네트워크 2023.04.24

2장 네트워크의 기본 규칙

네트워크의 규칙 프로토콜 네트워크 상의 통신 규칙 OSI 모델 ISO(국제표준화기구)에서 만든 표준 규격 통신을 일곱 개 계층으로 나눔 응용 계층 이메일, 파일전송, 웹 사이트 조회 등 애플리케이션에 대한 서비스 제공 표현 계층 문자 코드, 압축, 암호화 등의 데이터를 변환 세션 계층 세션 체결, 통신 방식을 결정 전송 계층 신뢰할 수 있는 통신을 구현 네트워크 계층 다른 네트워크와 통신하기 위한 경로설정 및 논리 주소를 결정 데이터 링크 계층 네트워크 기기 간의 데이터 전송 및 물리주소를 결정 물리 계층 시스템 간의 물리적인 연결과 전기 신호를 변환 및 제어 TCP/IP 모델 4계층으로 이뤄짐 OSI 계층의 일부분이 포함되어 TCP/IP 모델 계층을 이루고 있음 네트워크 접속 계층 -> 1~2계층 인터..

공부/네트워크 2023.04.24

1장 네트워크 첫걸음

네트워크의 구조 컴퓨터 네트워크 컴퓨터 간의 네트워크로 연결한 것 컴퓨터 간에 필요한 데이터를 서로주고 받음 패킷 네트워크를 통해 전송되는 데이터의 작은 조각 데이터들의 크기가 다르기 때문에 한번에 큰 데이터를 보내면 네트워크의 대역폭을 많이 차지하기에 패킷단위로 조각낸다. 패킷을 받을 때 순서대로 오지 않을 수 있어 순서에 맞춰 재정렬한다. 정보의 양을 나타내는 단위 비트 0과 1의 정보를 나타내는 최소 단위 바이트 0또는 1인 숫자 여덟개를 모아 표시하는 단위 8비트는 1바이트이다. 아스키 코드 알파벳, 기호, 숫자 등을 다루는 기본적인 문자 코드 랜과 왠 LAN(Local Area Network) 근거리 통신망을 말하며 건물 안이나 특정 지역을 범위로 하는 네트워크 WAN(Wide Area Netw..

공부/네트워크 2023.04.17

15장 파일 시스템

파일 하드 디스크나 SSD와 같은 보조기억장치에 저장된 관련 정보의 집합 속성(메타데이터) 파일관련 부가 정보 파일 형식, 위치, 크기 등 파일 연산을 위한 시스템 호출 종류 파일 생성 파일 삭제 파일 열기 파일 닫기 파일 읽기 파일 쓰기 디렉터리(폴더) 파일들을 관리하기 위해 존재 1단계 디렉터리 하나의 디렉터리만 존재 트리 구조 디렉터리 여러 계층을 가진 디렉터리 구조 최상위 디렉터리를 루트 디렉터리라고 부른다. 절대 경로 루트로 부터 자기 자신까지 이르는 고유한 경로 상대 경로 현재 디렉터리부터 시작하는 경로 디렉터리 연산을 위한 시스템 호출 종류 디렉터리 생성 디렉터리 삭제 디렉터리 열기 디렉터리 닫기 디렉터리 읽기 디렉터리 엔트리 디렉터리에 담겨 있는 대상과 관련된 정보를 담고 있는데 이를 테이..

14장 가상 메모리

연속 메모리 할당 스와핑 메모리 상 빈 공간에 또 다른 프로세스를 적제하여 실행하는 방식 스왑 영역 : 프로세스들이 쫓겨나는 보조기억장치의 일우 영역 스왑 아웃 : 현재 실행되지 않은 프로세스가 메모리에서 스왑 영역으로 옮겨지는 것 스왑 인 : 스왑 영역에 있던 프로세스가 다시 메모리로 옮겨지는 것 메모리 할당 최초 적합 운영체제가 메모리 내 빈 공간을 순서대로 검색하다가 적재할 수 있는 공간을 발견하면 그 공간에 프로세스를 배치하는 방법 최적 적합 운영체제가 빈 공간을 모두 검색한 후, 프로세스가 적재될 수 있는 공간 중 가장 작은 공간에 프로세스를 배치하는 방법 최악 적합 운영체제가 빈 공간을 모두 검색한 후, 프로세스가 적재될 수 있는 공간 중 가장 큰 공간에 프로세스를 배치하는 방법 외부 단편화 ..

13장 교착상태

교착 상태 식사하는 철학자 문제 동그란 원탁에 다섯명의 철하자가 앉아있다. 이 철학자들 앞에는 음식이 있고 철학자 사이마다 식사에 필요한 포크고 있다. 계속 생각하다가 왼쪽 포크가 사용가능하면 집어든다. 계속 생각하다가 오른쪽 포크가 사용가능하면 집어든다 왼쪽가 오른쪽 포크가 모드 집어들면 정해신 시간동안 식사한다. 식사가 끝나면 오른쪽 포크는 내려 놓는다. 오른쪽 포크를 내려 놓은 뒤 왼쪽 포크를 내려 놓는다. 다시 1번부터 반복한다. 문제 한두명의 철학자가 음식을 먹을때는 상관이 없다. 하지만 모든 철학자가 동시에 포크를 집으면 더 이상 집을 포크가 없어 아무도 식사를 할 수 없다. 이를 교착 상태라 한다. 자원 할당 그래프 어떤 프로세스가 어떤 자원을 사용하고 있으며 또 다른 프로세스가 어떤 자원을..

12장 프로세스 동기화

프로세스 동기화(Synchronization) 프로세스들 사이의 수행 시기를 맞추는 것 실행 순서제어를 위한 동기화 프로세스의 완료 순서가 있어 올바른 순서대로 실행하게 하는 것 상호 배제를 위한 동기화 공유가 불가능한 자원의 동시 사용을 피하기 위함 생산자와 소비자 문제 생산자와 소비자는 총합이라는 데이터를 공유 생산자는 버퍼에 물건을 넣은 후 물건의 총합에서 변수 1을 증가 소비자는 버퍼에 물건을 빼낸 후 물건의 총합에서 변수 1을 감소 이 두 개를 동시에 10만번 실행하면 공유자원인 총합을 사용하는 과정에서 충돌이 일어나 올바른 총합이 나오지 않음 공유 자원 생산자와 소비자 문제에서 총합은 공유 자원에 해당한다. 임계 구역 동시에 실행하면 문제가 발생하는 자원에 접근하는 코드 영역을 말함 레이스 컨..

11장 CPU 스케줄링

CPU 스케줄링 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것 프로세스 우선순위 입출력 집중 프로세스 비디오 재생이나 디스크 백업 작업을 담당 실행 상태보다 입출력을 위한 대기상태에 더 많이 머무른다. CPU 집중 프로세스 복잡한 수학연산, 컴파일, 그래픽 처리 담당 대기 상태보다 실행 상태에 더 많이 머무른다. 스케줄링 큐 운영체제가 메모리로 적제되고 싶은 프로세스들을 큐에 삽입하여 줄을 세운다. 스케줄링 큐는 꼭 큐형태는 아니다. 준비큐 CPU를 이용하고 싶은 프로세스들이 서는 줄 대기 큐 입출력장치를 이용하기 위해 대기 상태에 접어든 프로세스들이 서는 줄 선점형 스케줄링 프로세스가 CPU를 비롯한 자원을 사용하고 있더라도 운영체제가 프로세스로부터 자원을 강제로 빼앗아 다른 ..

10장 프로세스와 스레드

프로세스 포그라운드 프로세스 사용자가 보는 앞에서 실행되는 프로세스 백그라운드 프로세스 사용자가 안보는 곳에서 실행되는 프로세스 유닉스에서는 데몬, 윈도우에서는 서비스라고 부른다. 프로세스 제어 블록(PCB) 프로세스와 관련된 정보를 저장하는 자료 구조 프로세스 생성 시 만들어지고 실행이 끝나면 폐기된다. PCB 정보 프로세스 ID(PID) 특정 프로세스를 식별하기 위해 부여하는 고유한 번호 레지스터 값 프로세스는 한번에 자신의 프로그램을 끝낼 수도 중간에 멈출 수도 있다. 그렇기에 자신의 차례가 되면 이전까지 사용했던 프로그램 카운터를 비롯한 레지스터 값들이 담긴다. 프로세스 상태 프로세스의 사용 목적(입출력장치 사용, CPU사용 등)이 저장된다. CPU 스케줄링 정보 프로세스가 언제 어떤 순서로 CP..