[운영체제] 멀티 프로세스 & 멀티 쓰레드
·
CS/운영체제
0. 서론멀티 프로세스와 멀티 스레드는 한 어플리케이션에 대한 처리방식 이라고 보면 된다. 단순히 프로그램을 여러개 띄워놓는 것이 멀티 프로세스가 아니라 이 둘은 언제 어느때에 어떤 방식으로 처리하느냐에 따라 다른 것으로 이해해야 한다.이름으로 유추할 수 있듯이 멀티 프로세스와 멀티 스레드는 여러개의 프로세스, 스레드가 동작하는 것을 일 컫는다. 단일이 아닌 다중으로 돌아감으로써 성능 향상 등 여러가지 효과를 얻을 수 있다. 하지만 또한 이로 인해 발생되는 부가적인 문제점도 발생하게 된다. 지금 부터 이에 대해 자세히 알아보자1. 멀티 프로세스 (Multi Process)멀티 프로세스는 운영체제에서 하나의 응용 프로그램에 대해 동시에 여러 개의 프로세스를 실행할 수 있게 하는 기술을 말한다. 보통 하나의..
[운영체제] 프로세스 & 스레드 (Process & Thread)
·
CS/운영체제
0. 서론프로세스와 스레드가 무엇인지 알아보자. 이 둘을 한마디로 정의하면 다음과 같다.프로세스 (Process)운영체제로부터 자원을 할당받은 작업의 단위스레드 (Thred)프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위아직은 이게 무슨 차이인지 이해가 어려울 수도 있지만 모든 글을 읽고 나면 이해가 될 것이다.1. 프로그램과 프로세스1-1. 정적 프로그램 (Static Program)윈도우의 "exe" 파일이나 Mac의 "dmg" 파일과 같은 컴퓨터에서 실행할 수 있는 파일을 정적 프로그램(Static Program) 줄여서 프로그램이라고 부른다.즉, 프로그램은 코드 덩어리이다.1-2. 프로세스 (Process)프로그램이 돌아가고 있는 상태 즉, 컴퓨터에서 작업 중인 프로그램을 의미한다.모든 프로..
[네트워크] OSI 모델 7 계층(Open Systems Interconnection Model)
·
CS/네트워크
0. 서론OSI 7계층은 ISO에서 만든 "참조" 모델이다.따라서, 네트워크의 정답이 아니며 프로토콜처럼 지켜야 하는 규약이 아님을 주의하자.1. OSI 7 Layer각 레이어에 맞게 프로토콜이 세분화돼서 구현각 레이어의 프로토콜은 하위 레이어의 프로토콜이 제공하는 기능을 사용하여 동작1-1. 응용 계층(Application Layer)애플리케이션 목적에 맞는 통신 방법 제공HTTP, DNS, SMTP, FTP애플리케이션 간의 통신 방법을 결정하기 때문에 둘 사이에서 어떻게 데이터가 오고가게 만들 것인지는 해당 계층의 관심사가 아님아래 계층에서 결정하는 것이고 그것을 사용하기만 하면 됨1-2. 표현 계층(Presentation Layer)애플리케이션 간의 통신에서 메시지 포맷 관리인코딩 ↔ 디코딩암호화 ..
[네트워크] 웹 통신의 큰 흐름
·
CS/네트워크
0. 웹이란?WWW(World Wide Web)의 약자이며 인터넷으로 연결된 컴퓨터를 통해 정보를 공유할 수 있는 공간을 뜻한다.인터넷과는 엄연히 다른 개념으로, 인터넷이 더 상위 개념이다.인터넷: 인터넷 프로토콜을 사용해 네트워크와 기기 간 통신하는 컴퓨터 네트워크들이 전세계적으로 상호 연결되어 이루는 시스템이다.1. 웹 통신의 과정사용자가 웹 브라우저를 통해 URL을 입력한다.DNS 서버에서 도메인 네임을 IP 주소로 변환한다.웹 브라우저가 IP 주소와 사용자가 입력한 URL 정보로 HTTP 요청 메시지를 생성한다.요청은 TCP를 통해 서버로 전송된다.서버는 클라이언트의 요청을 처리하고 HTTP 응답을 전송한다.브라우저가 응답을 받아 웹 페이지를 렌더링한다.2. 부록HTTP (Hypertext Tra..