본문 바로가기

전체 글36

스레드와 병행성 스레드와 병행성개요스레드는 CPU의 기본 단위이다.스레드는 스레드 ID, 프로그램 카운터(PC), 레지스터 집합, 스택으로 구성된다.스레드는 같은 프로스세스에 속한 다른 스레드와 코드 섹션, 데이터 섹션, 운영체제 자원을 공유한다.동기현대의 컴퓨터와 모바일 기기에서 실행되는 대부분의 소프트웨어 어플리케이션들은 멀티스레드를 이용한다. 어플리케이션은 일반적으로 여러 스레드의 제어와 함께 별도의 프로세스로 구현된다. 스레드의 예시 웹 브라우저는 하나의 스레드가 이미지 또는 텍스트를 표시하고 다른 스레드는 네트워크에서 데이터를 검색하도록 할 수 있다. 웹 서버가 수천명의 클라이언트로부터 자원에 대한 요청을 받을 수 있다. 만약 웹 서버가 단일 스레드 프로세스로 동작한다면 한 번에 하나의 클라이언트만 자원을 응답.. 2024. 10. 4.
프로세스 프로세스의 개념프로세스란 실행 중인 프로그램을 말한다. 프로세스는 현대의 컴퓨팅 시스템에서 작업의 단위이다.프로세스프로세스의 현재 활동의 상태는 프로그램 카운터 값과 프로세서 레지스터의 내용으로 나타낸다. 프로세스의 메모리 배치는 다음과 같다.텍스트 섹션실행 코드데이터 섹션전역 변수힙 섹션프로그램 실행 중에 동적으로 할당되는 메모리스택 섹션함수를 호출할 때 임시 데이터 저장 장소(함수 매개변수, 복귀 주소 및 지역변수 등)텍스트 및 데이터 섹션은 고정되며 프로그램 실행 시간 동안 크기가 변하지 않는다. 스택 및 힙 섹션은 프로그램 실행 중에 동적으로 줄어들거나 커질 수 있다. 프로그램 그 자체는 프로세스가 아니다.프로그램명령어 리스트를 내용으로 가진 디스크에 저장된 파일과 같은 수동적인 존재프로세스다음에.. 2024. 9. 11.
서론 서론운영체제(operating system)컴퓨터 하드웨어를 관리하는 소프트웨어응용 프로그램을 위한 기반을 제공하며 컴퓨터 사용자와 컴퓨터 하드웨어 사이에 중재자 역할을 한다.운영체제가 할 일컴퓨터 시스템의 네 가지 구성 요소하드웨어중앙 처리 장치(CPU), 메모리 및 입출력(I/O) 장치로 구성되어, 기본 계산용 자원 제공운영체제응용 프로그램워드 프로세서, 스프레드시트, 컴파일러, 웹 브라우저 등사용자사용자 관점사용자 관점에서 운영체제는 사용의 용이성을 위해 설계된다.다양한 하드웨어와 소프트웨어 자원이 어떻게 공유되느냐의 자원의 이용에는 전혀 신경을 쓰지 않는다.시스템 관점컴퓨터의 관점에서 운영체제는 하드웨어와 가장 밀접하게 연관된 프로그램이다. 따라서 운영체제를 자원 할당자(resource alloc.. 2024. 7. 21.
링크 계층 소개 링크 계층 소개노드(node)링크 계층(2계층) 프로토콜을 실행하는 장치호스트, 라우터, 스위치, 와이파이 AP(access point) 등링크(link)통신 경로상의 인접한 노드들을 연결하는 통신 채널데이터그램을 출발지 호스트에서 목적지 호스트로 이동시키기 위해서는 데이터그램을 종단 간 경로의 개별 링크로 이동시켜야 함한 링크에서 전송 노드는 데이터그램을 링크 계층 프레임(link-layer frame)으로 캡슐화해서 링크로 전송한다.링크 계층이 제공하는 서비스프레임화(framing)거의 모든 링크 계층 프로토콜은 네트워크 계층 데이터그램을 링크상으로 전송하기 전에 링크 계층 프레임에 캡슐화 한다.링크 접속(link access)매체 접속 제어(medium access control, MAC) 프로토콜.. 2024. 4. 1.
인터넷에서의 AS 내부 라우팅: OSPF 인터넷에서의 AS 내부 라우팅: OSPF 네트워크를 동일한 라우팅 알고리즘을 수행하는 동종의 라우터 집합으로 간주하는 관점에서 생기는 문제 확장 오늘날 인터넷은 수억 개의 라우터로 구성되어 있어서 라우팅 테이블에 모든 도착지 정보를 저장할 수 없음 라우터 사이에 연결 상태와 링크 비용을 브로드캐스트 하는데 필요한 오버헤드는 엄청나다 수많은 라우터들 사이에서 수행되는 거리 벡터 알고리즘은 수렴되지 않을 것이다. 관리 자율성 ISP는 일반적으로 자신의 네트워크를 원하는 대로 운용하거나, 네트워크 내부 구성을 외부에 감추기를 원한다. 이상적으로, 하나의 조직은 자신의 네트워크를 외부 네트워크에 연결하면서도 자신이 원하는 대로 네트워크를 운영하고 관리할 수 있어야 함 이 두 가지 문제는 라우터들을 자율 시스템(.. 2024. 3. 12.
네트워크 계층 : 제어 평면 제어 평면이란 네트워크 전체를 아우르는 구성요소로서, 데이터그램이 출발지 호스트로부터 목적지 호스트까지의 경로를 따라 어떻게 전달되어야 하는지뿐만 아니라 네트워크 계층 구성요소와 서비스를 어떻게 설정하고 관리할지도 제어한다. 라우팅 알고리즘 라우팅 알고리즘(routing algorithm)의 목표는 송신자부터 수신자까지 라우터의 네트워크를 통과하는 좋은 경로를 결정하는 것이다. 일반적으로 '좋은' 경로란 최소 비용 경로를 말한다. 라우팅 알고리즘의 분류 중앙 집중형 vs 분산형 중앙 집중형 라우팅 알고리즘(centralized routing algorithm) 네트워크 전체에 대한 완전한 정보를 가지고 출발지와 목적지 사이의 최소 비용 경로를 계산한다. 링크 상태(link-state, LS) 알고리즘 분.. 2024. 3. 7.