CS
-
[OS] 프로세스와 스레드(Process vs Thread)CS/OS 2022. 6. 21. 22:55
Process & Thread 컴퓨터가 어떠한 일을 하는 상태를 프로세스라고 합니다. 우리가 오늘날 쾌적하게 컴퓨터를 사용할 수 있는건 운영체제가 여러 프로세스를 함께 돌리기 때문입니다. 프로세스를 돌리는 방식은 두가지입니다. 동시성(Concurrency) 작업을 조금씩 바꿔가면서 진행하는 것. Context Switch 알고리즘을 사용한다. 병렬성(Parallelism) 프로세스 하나에 코어가 여러개 달려 각각 여러개 작업을 하는 것 입니다. cpu의 속도가 발열 등의 제한으로 발전 속도가 느려지자 코어를 여러개 다는 방식을 선택한 것입니다. 자 이제 컴퓨터는 여러개의 프로세스를 돌릴 수 있게 됐는데 하나의 프로세스 내에서도 여러개의 일을 하고싶습니다. 예를 들어, 인터넷에서 게임을 설치 하면서 웹 서..
-
Hash란?CS/자료구조 2022. 6. 13. 22:04
배열 0 1 2 3 … 9270 … 9999 Koguri@koguri.com 배열은 원소 하나를 저장하거나 검색할 때 자료의 개수와 비례하는 시간이 걸리게 됩니다. koguri@koguri.com이 맞는지 확인할때 하나하나 비교해야하기 때문에 O(N)의 시간이 걸리게됩니다. 배열보다 조금 더 빨리 자료를 저장, 검색 할 방법은 없을까? 란 고민 끝에 나온 자료구조가 트리입니다. 트리 트리는 원소 하나를 저장하거나 검색하는 데 평균 O(logN)의 시간이 걸립니다. 레드 블랙 트리처럼 균형 잡힌 트리는 최악의 경우에도 O(logN)의 시간이 걸리게 됩니다. 하지만 트리도 자료의 크기가 커지면 저장 및 검색에 오랜 시간이 걸리게 됩니다. 저장된 자료의 양에 상관없이 원소 하나를 저장하고 검색하는 것을 상수 ..
-
HTTP vs HTTPSCS/컴퓨터네트워크 2022. 6. 13. 21:05
HTTP란? - Hypertext Transfer Protocol의 줄임말로 서로 다른 시스템들 사이에서 통신을 주고받게 하는 가장 기본적인 프로토콜이다. - 서버에서 브라우저로 데이터를 전송하는 용도로 가장 많이 사용한다. - HTTP는 80번 포트를 사용한다. - HTTP는 서버에서 브라우저로 전송되는 정보가 암호화되지 않는다는 문제점이 존재하여 데이터가 쉽게 도난당할 수 있다. HTTP의 구조 HTTP는 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동한다. HTTP는 상태를 가지고 있지 않는 Stateless 프로토콜이며 Method, Path, Version, Headers 등으로 구성된다. 정보가 암호화되지 않는다는 문제점이 존재하여 이 문제를 해결하기 위해 HTTPS가 등장하게 되었다...
-
CORSCS 2022. 5. 31. 18:43
CORS(Cross Origin Resource Sharing) 웹 프론트 엔드와 api 서버를 따로 구성하는 경우, 프론트 엔드에서 다른 origin의 api 서버로 요청을 보내면 문제가 발생한다. 이 문제를 CORS라고 한다. 쉽게 말해서 CORS정책은 우리가 가져오는 리소스가 안전한지 검사하는 관문이다. 여기서 말하는 Origin 이란, 아래의 세 가지 요소를 조합한 것을 말한다. URL의 Protocol, Host, Port를 통해 같은 출처인지 판단할 수 있다. 배경 SOP 정책 : 같은 출처에서만 리소스를 공유할 수 있다. 예전에는 브라우저에서 요청을 보내면, 서버는 해당하는 로직을 수행한 뒤 HTML 페이지를 렌더링 한 뒤 브라우저에 반환해주는 방식이 일반적이었다. 즉, 하나의 서버(동일한 ..
-
www.google.com을 검색하면 어떤일이 발생할까CS/컴퓨터네트워크 2022. 5. 4. 00:21
1. 사용자는 브라우저 주소창에 www.google.com을 을 친다. 2. DNS lookup을 통해 해당 domain의 server IP 주소를 알아냅니다. *DNS(Domain Name System) : 도메인 이름 시스템(DNS)은 사람이 읽을 수 있는 도메인 이름(예: www.google.com)을 머신이 읽을 수 있는 IP 주소(예: 192.0.2.44)로 변환합니다. 웹사이트를 위한 전화번호부 같은 존재라고 생각하면 됩니다. *DNS lookup : DNS정보를 조회하는 명령어로 서버, 주소등을 알 수 있다. 2-1) DNS의 동작 과정 1. 우선 www.google.com을 검색하면 우선 Local DNS에서 구글의 IP주소를 물어본다. 2. 만약 구글의 IP주소가 Local DNS에 존재..