About
Book
Github
개발기
About
Book
Github
개발기
Computer Science
북
0
결과가 없습니다
포스트
17
네트워크 계층
LAN을 넘어서는 네트워크 계층 LAN을 넘어서 다른 네트워크와 통신하기 위해서는 네트워크 계층이 필요합니다. 네트워크 계층에서는 IP 주소를 이용해 송수신지 대상을 지정하고, 다른 네트워크에 이르는 경로를 결정하는 라우팅을 통해 다른 네트워크와 통신합니다. 물리 계층과 데이터 링크 계층만으로는 다른 네트워크까지의 도달 경로를 파악하기 어렵습니다. 다른 네트워크와 빠르게 통신하기 위해 패킷이 이동한 최적의 경로를 결정하는 것을 라우팅(Routing) 이라고 하며, 네트워크 계층의 장비 중 라우팅을 수행하는 대표적인 장비가 라우터(Router) 입니다. 인터넷 프로토콜(Internet Protocol; IP) 네트워크 계층의 가장 핵심적인 프로토콜은 인터넷 프로토콜입니다. IP에는 IPv4 , IPv6
Computer Science
-
Network
#
Network
2025.01.22
· Updated 2025.01.22
Detail
물리 계층과 데이터 링크 계층
이더넷 (Ethernet) 이더넷은 유선 LAN환경에서 가장 대중적으로 사용되는 기술입니다. 케이블과 같은 통신 매체를 통해 정보를 송수신할 때 서로 방법이 정해져 있어야 하는데, 그것이 바로 이더넷입니다. 이더넷은 다양한 통신 매체의 규격과 송수신되는 프레임의 형태, 프레임을 주고받는 방법 등이 정의된 네트워크 기술입니다. 이더넷 표준 오늘날의 유선 LAN환경은 대부분 이더넷을 기반으로 구성됩니다. IEEE(Institute of Electrical and Electronics Engineers)에서 이더넷 관련 기술을 IEEE 802.3 이라는 이름으로 표준화했습니다. 따라서 서로 다른 컴퓨터가 각기 다른 제조사의 네트워크 장비를 사용하더라도 동일한 형식의 프레임을 주고받고 통일된 형태로 작동할 수 있
Computer Science
-
Network
#
Network
2025.01.16
· Updated 2025.01.16
Detail
컴퓨터 네트워크 시작하기
컴퓨터 네트워크를 알아야 하는 이유 컴퓨터 네트워크는 우리 일상을 지탱하는 주요 기반 기술입니다. 컴퓨터 네트워크 줄여서 네트워크 란 여러 개의 장치가 마치 그물처럼 서로 연결되어 정보를 주고 받을 수 있는 통신망 입니다. 인터넷(Internet) 네트워크를 통해 주변의 장치와 정보를 주고받는 것을 넘어서 네트워크와 연결된 지구 반대편의 다른 장치와도 정보를 주고 받을 수 있도록 하는 기술을 인터넷 이라고 합니다. 즉 여러 네트워크를 연결한 ‘네트워크의 네트워크’ 를 인터넷이라고 합니다. 네트워크 거시적으로 살펴보기 네트워크는 거시적으로 그래프의 형태를 띠고 있습니다. 그래프(Graph)란 노드(Node)와 노드를 연결하는 간선(Edge)로 이루어진 자료구조입니다. 네트워크의 기본 구조 모든 네트워크
Computer Science
-
Network
#
Network
2025.01.15
· Updated 2025.01.16
Detail
입출력 시스템
디스크 구조 디스크는 대용량 데이터를 영구적으로 저장하는 대표적인 저장 장치입니다. 이차 메모리라고도 합니다. 디스크의 물리적 구조 HDD는 여러 개의 자기 디스크 플래터로 구성되며, 각 플래터는 양면에 데이터를 저장할 수 있습니다. 플래터는 고속으로 회전하며, 데이터를 읽고 쓰기 위해 디스크 헤드(head)가 움직입니다. 디스크의 주요 구성 요소 플래터(Platter) 트랙(Track) 섹터(Sector) 실린더(Cylinder) 디스크 헤드(Head) 암(Arm) 스핀들(Spindle) 디스크의 논리적 구조 운영 체제는 디스크의 물리적 구조를 기반으로 데이터를 저장하고 관리합니다. 디스크의 논리적 구조는 블록 단위로 데이터를 관리하며, 블록은 디스크의 섹터와 관계됩니다. 블록(Block) 파일 시스템(F
Computer Science
-
OS
#
OS
2025.01.08
· Updated 2025.01.08
Detail
파일 시스템
파일과 파일 시스템 파일 (File) 파일은 컴퓨터에서 데이터를 저장하기 위한 논리적인 단위입니다. 텍스트, 이미지, 비디오, 오디오, 프로그램 실행 파일 등 다양한 데이터 형식이 파일로 저장됩니다. 운영체제는 다양한 저장장치를 File이라는 논리적 단위로 볼 수 있게 해줍니다. 메타데이터 (Metadata; File Attribute) 메타데이터는 파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들의 집합입니다. 파일 이름, 유형, 저장된 위치, 파일 사이즈와 같은 정보 뿐만 아니라 읽기/쓰기/실행에 대한 접근 권한과 생성 시간/변경 시간/사용 시간, 소유자 등의 정보까지 기록되어 있습니다. 파일 시스템 파일 시스템은 운영체제에서 파일을 관리하는 소프트웨어 구현부로 하드 디스크, SSD와 같은
Computer Science
-
OS
#
OS
2025.01.08
· Updated 2025.01.08
Detail
가상 메모리
요구 페이징 요구 페이징은 프로그램 실행 시 프로세스를 구성하는 모든 페이지를 한꺼번에 올리는 것이 아니라 당장 사용할 페이지만 메모리에 올리는 방식입니다. 따라서 특정 페이지에 대한 요청이 CPU로부터 들어온 후에 해당 페이지를 메모리에 적재합니다. 요구 페이징은 당장 필요한 페이지만 메모리에 적재하기 때문에 메모리 사용량이 감소하고 프로세스 전체를 메모리에 올리는 데 소요되는 입출력 오버헤드를 줄입니다. 추가적으로 물리적 메모리의 용량 제약을 벗어나 물리적 메모리보다 더 큰 프로그램도 실행할 수 있습니다. 각 페이지가 메모리에 존재하는지 여부를 판단하기 위해 요구 페이징에서 유효-무효 비트(Valid-InValid Bit) 를 표시합니다. 이러한 비트는 각 프로세스를 구성하는 모든 페이지에 존재해야 하
Computer Science
-
OS
#
OS
2025.01.08
· Updated 2025.01.08
Detail
메모리 관리
한정된 메모리 공간을 어떻게 하면 효율적으로 관리할 수 있을까? CPU는 2차 메모리 즉 저장장치에 직접 접근할 수 없으며 필요한 데이터를 메인 메모리에서 가져와야 합니다. 하지만 메모리 공간은 한정적입니다. 여러 개의 프로그램을 동시에 실행해야 하는 운영체제는 한정적인 메모리 공간을 최대한 효율적으로 관리해서 CPU에게 필요한 데이터를 빨리 제공해야 하는 것이 목표입니다. CPU는 주소 값을 통해 메모리에 접근하기 때문에 주소 공간에 대해 먼저 알아봅시다. 주소 공간(Address Space) 운영체제에서 주소 공간이란 프로세스가 접근할 수 있는 메모리 주소 범위를 의미합니다. 각 메모리 주소는 1 바이트(8 비트)를 가리키며, 주소 하나가 비트가 아니라 8비트 (1바이트) 단위를 식별합니다. 위의 그림
Computer Science
-
OS
#
OS
2025.01.07
· Updated 2025.01.08
Detail
데드락
교착 상태(Deadlock) 일련의 프로세스가 서로가 이미 가지고 있는 자원을 기다리면서 block되어 있는 상태 데드락 발생의 네 가지 조건 상호배제: 매 순간 하나의 프로세스만 자원을 사용할 수 있음 비선점: 프로세스가 자원을 강제로 빼앗기지 않고 스스로 내어놓음 점유 대기 : 자원을 가진 프로세스가 다른 자원을 기다릴 때 보유한 자원을 내놓지 않고 계속 가짐 순환 대기 : 자원을 기다리는 프로세스 간에 사이클이 형성되어야 함 자원 할당 그래프 사이클이 생기면 Deadlock 근데 자원 안의 instance의 개수가 중요한데, instance의 개수가 여러 개면 데드락이 발생하는지 따져봐야함 데드락의 처리 방법 Deadlock Prevention 데드락을 미연에 방지하는 방법 중 Prevention은 가
Computer Science
-
OS
#
OS
2024.12.31
· Updated 2025.01.01
Detail
병행 제어 2
공유 데이터에 접근하는 Critical Section 문제를 해결하기 위해 상호 배제, 진행, 유한 대기 조건을 충족해야 하며, 세마포어와 다양한 알고리즘을 통해 동시 접근을 관리할 수 있다. Block/Wakeup 방식이 일반적으로 더 좋지만, Critical Section이 짧을 경우 Busy-wait 방식이 유리할 수 있다.
Computer Science
-
OS
#
OS
2024.12.31
· Updated 2025.01.01
Detail
병행 제어 1
데이터 접근 시 경쟁 상태가 발생할 수 있으며, 이를 해결하기 위해 프로세스 간 실행 순서를 정하고 Lock을 사용하는 것이 중요하다. 커널 모드에서의 Context Switch와 인터럽트 처리 시 Race Condition을 방지하기 위한 방법도 설명된다.
Computer Science
-
OS
#
OS
2024.12.25
· Updated 2024.12.31
Detail
1
2
© Churnobyl 성철민
Contact: tjdcjfals@gmail.com