개발 335

Synchronization Tools

Critical Section Problem 은 thread들이 공통 변수를 변경하고 파일의 쓰기 작업들을 수행하는 구역에서 한 Thread가 Critical Section에 들어갔을 경우, 다른 Thread들은 해당 구역 접근이 배제되어야 합니다. 위의 경우를 해결하기 위해 Peterson's Solution 이 사용됩니다. 2개의 Thread가 있을 때 flag를 사용하여 접근을 배제합니다. Mutext Lock이란 임계구역에 들아가기 전에 lock을 획들하고 나올때는 lock을 반환합니다. available 변수를 가지고 lock의 가용 여부를 판단합니다. Semaphore(세마포어) 카운팅 세마포어는 프로세스가 임계구역에 들어갈 때 wait값이 감소하고, lock을 반납할 때(signal) 값이 ..

개발/잡다개발 2020.06.18

CPU Scheduling

FCFS(First Come First Served) 디스크 스케줄링에서 가장 심플한 방식입니다. 가장 먼저 도착한 요청을 우선적으로 처리하고, 입출력 요청 대기 큐에 들어온 순서대로 서비스합니다. 장정 : 개발이 용이하고 무기한 기다림이 없습니다. 단점 : 이동경로가 길어지고 최적의 seek time을 찾을 수 없습니다. SJF(Shorteset Job First Scheduling) CPU를 적게 사용하는 것 부터 먼저 수행을 시켜 Waiting time이 적습니다. Priority Scheduling 우선순위 스케줄링이 있는데, 문제점으로 외부에서 새로운 프로세스가 들어오면 그 프로세스 우선적으로 처리하면서 오래 기다린 프로세스가 멈추는 경우가 있는데, 오래 기다릴 수록 우선순위를 높여주어야 한다...

개발/잡다개발 2020.06.18

TCP UDP

데이터를 전달하는 프로토콜에 TCP, UDP가 있습니다. TCP(Transmission Control Protocol) 특징 - 흐름 및 혼잡 제어 - 높은 시회선 - UDP보다 속도가 느림 - 서버와 클라이언트는 1:1로 연결 - 패킷에 대한 응답을 함 UDP(User Datagram Protocol) 특징 - 신뢰성이 낮다 - TCP보다 속도가 빠르다. - 1:1 or 1:N으로 연결될 수 있다. - 신뢰성보다 성능이 중요한 서비스에 제공 참조 [1] - https://mangkyu.tistory.com/15

개발/잡다개발 2020.06.14

DHCP

DHCP(Dynamic Host Configuration Protocol) DHCP란 호스트의 IP주소와 TCP/IP 기본 설정을클라리언트에게 자동적으로 제공해주는 프로토콜입니다. DHCP 장점으로는 PC의 수가 많거나 변동이 많을 경우 IP 설정이 자동으로 되기 때문에 효율적으로 사용이 가능합니다. DHCP 단점으로는 DHCP 서버가 죽으면 IP할당이 이루어지지 않습니다. 참조 [1] - https://jwprogramming.tistory.com/35

개발/잡다개발 2020.06.14

NAT

네트워크 주소 변환(Network address translation) NAT은 IP패킷의 TCP/UPD 포트 숫자와 소스 목적기의 IP주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술입니다. 패킷에 변화가 생겨, IP나 TCP/UDP의 체크섬(checksum)도 다시 계산되어 재기록해야 합니다. NAT을 사용하는 이유는 여러 개의 호스트가 하나의 공인 IP 주소를 사용해 인터넷에 접속하기 위함이다.

개발/잡다개발 2020.06.14

IGMP

IGMP (Internet Group Managment Protocol) 서브넷 상의 멀티캐스팅 멤버십 제어 프로토콜 하나의 라우터와 여러 호스트로 구성되는 서브 네트워크 상에서 제어 프로토콜입니다. 전송용 프로토콜이 아니라, 제어용 프로토콜입니다. 멀티캐스트 라우터는 1. 멀티캐스트 라우터는 주기적으로 subnet 호스트 그룹들에게 IGMP Query 메세지를 전송 2. 호스트는 IGMP Query 메세지에 응답하며 다신의 그룹 정보(멀티캐스트 주소)를 IGMP 메세지를 통해 라우터에게 알려줌 참조 [1] - http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=1716&id=707

개발/잡다개발 2020.06.14