반응형 Computer Science118 [운영체제] OS의 교착상태(Deadlock) 이론과 해결 알고리즘 (Banker's Algorithm, Safety Algorithm, Detection Algorithm, 자원 그래프) System Model시스템은 resource들(R1, R2, ..., Rm)로 구성됩니다.각 resource type은 CPU cycles, memory space, I/O devices와 같은 자원을 의미하며, 각 resource type Ri는 Wi개의 인스턴스를 가집니다. 프로세스는 다음과 같은 순서로 자원을 활용합니다:Request: 자원 요청Use: 자원 사용Release: 자원 해제Deadlock CharacterizationDeadlock은 다음 4가지 조건이 동시에 충족될 때 발생합니다:Mutual Exclusion: 한 번에 하나의 프로세스만 특정 자원을 사용할 수 있음.Hold and Wait: 자원을 보유한 프로세스가 다른 프로세스가 점유한 추가 자원을 요청하며 대기.No Preem.. 2025. 5. 31. [네트워크] NAT(network address translation)동작 원리와 IPv6 도입 NAT: Network Address TranslationNAT(Network Address Translation)는 내부 네트워크의 모든 device들이 외부 세계(인터넷)에서는 단 하나의 IPv4 address만 사용하는 기술이다.즉, 내부 네트워크(예: home network 10.0.0/24)에 여러 device(10.0.0.1, 10.0.0.2 등)가 있더라도, 외부에서는 모두 동일한 NAT IP address(예: 138.76.29.7)만 보인다.내부 네트워크에서 외부로 나가는 모든 datagram은 동일한 NAT IP address(예: 138.76.29.7)를 source로 사용하지만, source port number는 각기 다르다.내부 네트워크로 들어오는 datagram은 원래대로 내부.. 2025. 5. 30. [네트워크] IP 데이터그램 형식과 주소 할당 방식(서브넷, DHCP, CDIR) Network Layer: InternetNetwork Layer는 인터넷에서 host와 router의 핵심 기능을 담당한다.주요 기능에는 Path-selection algorithms(경로 선택 알고리즘), IP protocol(IP 프로토콜), ICMP protocol(ICMP 프로토콜)이 있다.Path-selection algorithmsrouting protocols(OSPF, BGP), SDN controller 등에 의해 구현된다.forwarding table(포워딩 테이블)을 사용해 데이터가 목적지까지 가는 경로를 결정한다.IP protocoldatagram format(데이터그램 포맷), addressing(주소 지정), packet handling conventions(패킷 처리 규칙)을.. 2025. 5. 30. [네트워크] 라우터 내부 구조, 포트, 버퍼 관리, 스케쥴링 내부 동작 설명 Router Architecture Overview (라우터 아키텍처 개요)라우터(Router)는 네트워크에서 데이터그램(datagram, 패킷)을 목적지까지 전달(forwarding)하는 장치이다. 라우터의 내부 구조는 크게 두 가지 평면(plane)으로 나뉜다.Control Plane(제어 평면): 소프트웨어 기반으로 동작하며, 라우팅(routing)과 관리(management)를 담당한다. 라우팅 프로토콜을 통해 라우팅 테이블을 계산하고, 이 결과를 데이터 평면에 전달한다. 밀리초(ms) 단위의 시간 프레임에서 동작한다.Data Plane(데이터 평면, Forwarding Plane): 하드웨어 기반으로 동작하며, 실제 패킷 전달(forwarding)을 수행한다. 나노초(ns) 단위의 매우 빠른 시.. 2025. 5. 28. [네트워크] 네트워크 계층 개요와 라우터, data plane, control plane Network-layer services and protocolsNetwork-layer(네트워크 계층)은 transport segment(트랜스포트 계층의 세그먼트)를 sending host(송신 호스트)에서 receiving host(수신 호스트)로 전달하는 역할을 한다.sender(송신자): 세그먼트를 datagram(데이터그램)으로 캡슐화(encapsulate)하여 link layer(링크 계층)로 전달한다.receiver(수신자): 데이터그램에서 세그먼트를 추출하여 transport layer protocol(트랜스포트 계층 프로토콜)로 전달한다.네트워크 계층 프로토콜은 모든 Internet device(인터넷 장치)에 존재한다. 여기에는 hosts(호스트)와 routers(라우터)가 포함된다... 2025. 5. 28. [데이터베이스] Query Processing 단계, 비용과 최적화, 내부 동작 원리 Query ProcessingQuery processing(질의 처리)은 사용자가 작성한 고수준 쿼리(SQL 등)를 내부적으로 효율적으로 실행할 수 있는 저수준 연산으로 변환하고, 최적의 실행 계획을 선택하여 실제로 결과를 산출하는 일련의 과정을 의미한다. 이 과정은 데이터베이스 시스템의 성능과 효율성에 직접적으로 영향을 미친다.Query Processing의 3단계1. Parsing and Translation사용자가 입력한 쿼리의 문법(syntax)과 의미(semantics)를 검사한다.쿼리를 내부 표현(주로 relational algebra expression, 관계 대수식)으로 변환한다.파서는 SQL 문법 오류를 체크하고, 존재하지 않는 relation이나 attribute가 사용되었는지 검증한다.. 2025. 5. 24. [데이터베이스] 쓰기 중심 특화 자료구조 : LSM Tree, Skip list, Redis zset (Write Optimized Indices) Write Optimized Indices와 LSM Tree, Skip list, Redis zsetWrite Optimized IndicesB+ tree는 write-intensive workload(쓰기 중심 작업) 환경에서 성능이 저조할 수 있다.모든 internal node가 메모리에 있다고 가정해도, leaf node당 한 번의 I/O가 필요하다.자기 디스크(magnetic disk) 사용 시, 디스크당 초당 100번 미만의 insert 처리 성능을 보인다.플래시 메모리(flash memory)에서는 insert마다 한 페이지를 overwrite한다.쓰기 비용(write cost)을 줄이기 위한 대표적 접근법 중 하나가 Log-structured merge tree(LSM tree)이다.Log .. 2025. 5. 24. 이전 1 2 3 4 5 ··· 17 다음