본문 바로가기

CS42

네트워크 스터디 2주차 - 2계층의 이더넷 프로토콜, 3계층의 IP와 ARP 프로토콜 2 계층에서 하는 일 하나의 네트워크 대역(LAN) 안에서 같은 네트워크 상에 존재하는 노드(여러 장비들) 중에서 어떤 장비에게 보내는 데이터를 전달함. 추가적으로 오류제어(보내는 데이터에 오류는 없는지), 흐름제어(누가 누구에게 데이터를 보내는지)를 수행. 즉 2계층은 하나의 네트워크 대역 LAN에서만 통신할 때 사용한다. 다른 네트워크와 통신할 때는 항상 3계층이 도와주어야 한다. 3계층의 주소와 3계층의 프로토콜을 이용해야만 다른 네트워크와 통신이 가능함. LAN에서 통신할 때 사용하는 식별 주소는 MAC 주소. 물리적인 주소라고도 부름. 물리적 주소는 16진수로 쓰고 앞에 6바이트는 OUI(IEEE에서 부여하는 일종의 제조회사 식별 ID), 뒤 6바이트에는 고유번호(제조사에서 부여한 고유번호) 이.. 2024. 2. 11.
네트워크 스터디 1주차 - 네트워크 전반, 데이터 송수신 네트워크란 여러 개의 시스템이 연결되어 있는 통신망. 인터넷은 이 통신망 중 하나. 인터넷은 문서, 그림, 영상과 같은 여러가지 데이터를 공유하도록 구성된 세상에서 가장 큰 전세계를 연결하는 네트워크 (즉 네트워크가 조금 더 포괄적인 개념). 인터넷이라는 통신망을 바탕으로 웹 서비스(www)를 이용하는 것. 인터넷 통신망 안에서 웹 말고도 다른 서비스를 이용할 수도 있음. 네트워크는 1) 크기에 따른 분류 2) 연결 형태의 따른 분류가 있을 수 있음 크기에 따른 분류 네트워크는 크기에 따른 분류와 연결 형태에 따른 분류가 있음. 크기로 구분하면 LAN, WAN, MAN 등이 있음. LAN(Local Area Network)은 가까운 지역을 하나로 묶은 네트워크. WAN은 멀리 있는 지역을 한데 묶은 네트.. 2024. 2. 11.
운영체제 스터디 7주차 - Mutex, Semaphore, Monitor, Liveness 저번 주차까지 프로세스(혹은 스레드) 동기화의 해결 방법으로 소프트웨어적으로는 피터슨 알고리즘, 하드웨어적으로는 test-and-set 등으로 atomic variable을 만드는 방법을 보았다. https://kyumcoding.tistory.com/102 운영체제 스터디 6주차 - 동기화 Background 프로세스들이 concurrent하게 데이터에 접근하여 수정을 할 경우 데이터 정합성(Data Inconsistency - 어떤 데이터들의 값이 서로 일치함)가 깨질 수도 있다. 서로 협력하는 프로세스의 요청들을 kyumcoding.tistory.com 이번에 알아볼 방법은 조금 더 하이레벨적인 솔루션들에 대해서 알아볼 예정이다. Mutex는 가장 심플한 동기화 툴이고(2개), Semaphore는 .. 2024. 1. 31.
운영체제 스터디 6주차 - 동기화 Background 프로세스들이 concurrent하게 데이터에 접근하여 수정을 할 경우 데이터 정합성(Data Inconsistency - 어떤 데이터들의 값이 서로 일치함)가 깨질 수도 있다. 서로 협력하는 프로세스의 요청들을 순서대로 처리해주는 것을 보장해줘야지 데이터의 정합성을 보장하는 것이 가능. 데이터의 무결성(Integrity of Data)도 고려해줘야 하는데 아래와 같은 환경이기 때문 1) 동시(Concurrent) 처리를 하는 경우: Instruction stream 중간의 어느 포인트에서 인터럽트가 발생해 컨텍스트 스위칭이 발생할지 모르고, 멀티 코어 프로그래밍을 하는 경우 컨텍스트 스위칭되었다고 하더라도 다른 코어에서 해당 프로세스를 할당하여 처리할 수도 있음 2) 병렬(Parall.. 2024. 1. 26.