프로세스
: 프로세스는 CPU 시간을 할당 받아 실행 중인 프로그램 (게임을 키면 프로세스 그게 아니면 프로그램)
: 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당 받아 실행 중인 것을 의미
: 프로세스는 프로그램에 사용되는 데이터, 메모리 등 자원과 스레드로 구성
스레드
: 프로세스 내에서 실제로 작업을 수행하는 주체(로그인, 클릭 등등...)
프로세스끼리는 약하게 연결되어 있는 반면 스레드끼리는 강하게 연결
스레드 병렬 수행
스레드 병렬 수행의 이점
프로세스와 스레드의 관계
스레드를 이용하여 프로글매의 비동기적 요소를 구현한 예
다중 스레드 단점
모든 스레드가 자원을 공유하기 때문에 한 스레드에 문제가 생기면 전체 프로세스에 영향을 미침
인터넷 브라우저에서 여러 개의 화면을 동시에 띄웠을 때, 그 중 하나에 문제가 생기면 브라우저 전체가 종료
IP 주소 체계
DNS 필요성
– /etc/hosts 파일
DNS
계층구조의 도메인 기반 주소 표기 방법을 위한 분산 데이터베이스 시스템
도메인 이름에서 IP 주소를 얻음
해석기
: IP 주소를 원하는 응용 프로그램은 도메인 이름을 매개변수로 해석기 호출함
: UDP를 이용해 DNS 네임 서버에 변환을 요청하여 호스트의 IP 주소를 얻음
도메인 네임 스페이스, 네임 서버, 해석기로 구성
도메인 네임 스페이스
트리 구조의 네임 스페이스를 비롯해 데이터에 대한 이름 관련 규칙을 정의
트리에 연결된 호스트는 자원 레코드(Resource Records)로 표현
DNS 서비스는 자원 레코드의 특정 유형 정보를 얻는 과정
네임 서버
해석기
도메인 영역
존 : 임의의 네임 서버가 관리하는 영역
존
요청의 처리
질의 요청이 처리되는 과정
: 인증 데이터가 반드시 필요한지 명시, 혹은 캐시
: 해석기는 질의 요청을 재귀적으로 처리하는 명시, 혹은 비재귀적
재귀적 처리
: 해석기가 최초로 접속을 시도한 네임 서버가 질의 요청을 추적, 관리
: 네임 서버가 결과적으로 해석기 역할을 수행
비재귀적 처리
: 요청을 받은 네임 서버가 다른 네임 서버의 포인터 정보를 회신
그림 예시 (반복적 처리가 비재귀적이라 생각하기)
소중한 정보 잘 봤습니다!