일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 비동기
- 자바
- Zerobase
- Computer Science
- 운영체제
- 파이썬 알고리즘 인터뷰
- execution context
- 컴퓨터공학
- OS
- python algorithm
- 글또
- 알고리즘
- useState
- 프로그래머스
- algorithm
- Operating System
- codestates
- 테스트코드
- 개발공부
- 자료구조
- 자바스크립트
- java
- node.js
- REACT
- Python
- 코드스테이츠
- 파이썬
- react 기초
- context switching
- JavaScript
- Today
- Total
목록전체 글 (113)
Back to the Basics

제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 프로세스와 컨텍스트 스위칭 Context Switching 이란 간단하게 말하면, Process A 실행 중 Process B로 바꿔주는데, 이 바꿔주는 메커니즘을 Context Switching이라고 한다. Context Switch는 Process와 매우 밀접하게 관련이 있으며 이 Contetxt Switching 메커니즘에 대해 조금 더 이해하기 위해 Process 구조를 알 필요가 있다. 즉, 실제 프로그램의 구조를 알아야 한다. 1. Process의 구조 Deep Dive! Process의 구조 Process는 사용자 입장에서 크게 Text, Data, Head, Stack이라는 네 가지 영역으로 구분된다. text (C..

제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 멀티프로그래밍(Multi programming) 멀티프로그래밍? 위키백과에 따르면, 멀티 프로그래밍은 CPU작업과 입출력 작업을 병행하여 CPU이용과 처리량을 향상시킬 수 있는 스케줄링 알고리즘이다. 위의 그림과 같이 하나의 Program의 wait 시간동안 다른 응용 프로그램을 실행한다. 프로세서는 한번에 한 작업만 가능하기때문에, 실제로는 스케줄러에 의해 통제되어 한 프로그램이 일부 수행하고 나서 또 다른 프로그램이 일부 수행되는 방식으로 진행을 한다. 그 시간 간격이 매우 짧기 때문에 마치 병렬적으로 작업이 진행되는 것처럼 보인다. 이런 방식으로 수행되기 때문에, 멀티 프로그래밍은 CPU 활용도를 극대화하는 스케줄링 알고리즘..

제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 Process란? 실행 중인 프로그램을 프로세스라고 한다. 메모리에 올려져서 , 실행 중인 프로그램이다. 작업 , task, job 이라는 용어와 혼용되어 사용된다 응용프로그램 ≠ 프로세스 응용프로그램은 여러 개의 process로 이루어질 수 있다. 하나의 프로그램은 여러 개의 process가 상호작용을 하면서 실행될 수도 있다. (unix 철학) 예를 들어, 간단한 C++ 프로그램을 만든다면 하나의 프로세스이지만, 여러 프로그램을 만들어서, 서로 통신하면서 프로그램을 작성할 수도 있다 (IPC 기법) 스케줄러와 프로세스 프로세스의 실행은 스케줄러에 의해 관리된다. 스케줄러가 스케줄 하는 단위가 프로세스이다.' 스케줄링 알고리즘 ..

Middleware Express Middleware 기초적인 사용을 위해 작성한 code 분석 , method 공부 , 개념 공부 포스팅 Express 공식문서의 Writinf middleware for use in Express apps을 참고하였습니다. Middleware function Middleware 함수는 request object, response object , request-response 주기에서 next 함수에 대한 권한을 갖는 함수이다. next function : Express router에서 현재 middleware 다음에 실행 될 middleware 함수를 실행한다. Middleware 함수는 아래의 작업들을 수행한다. 모든 code를 실행한다. 요청,응답 객체에 대한 변경..

Anatomy of an HTTP Transaction 이 글은 Anatomy of an HTTP Transaction을 읽고 정리한 글입니다. 개인적인 정리이니 의역 다분함을 명심해 주세요. 이 내용을 알기 위해서는 EventEmitter와 Streams에 대해 어느 정도 친숙해야 한다고 한다. (그것을 가정하고 작성된 문서이다) Create the Server node web server는 createServer를 사용하여 web server object를 생성하면서 시작하다. server object는 EventEmitter이다. http.createServer([options][, requestListener]) Syntax cosnt http=require('http') http.createSe..

Events 이 글은 Node.js Ver 17.0.1 documentation을 읽고 정리한 글입니다. 개인적인 정리이니 의역 다분함을 명심해 주세요. Node.js의 대부분 API는 event를 내보내는 "event 기반의 아키텍처"를 사용해서 만들어졌다. emitter라는 특정한 종류의 객체가 내보내는 event는 listeners라고 불리는 함수를 호출한다. 예를 들어, net.Server Object는 peer가 연결할 때마다 event를 내보내고, fs.ReadStream은 file이 열릴 때마다 event를 내보낸다. 그리고 stream은 data가 읽을 수 있을 때마다 event를 내보낸다. 이와 같이 events를 내보내는 모든 객체는 EventEmitter Class의 Instance이..

제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅입니다. 배치 처리 시스템 (일괄 처리 , Batch Processing) Queue 자료구조와 비슷한 FIFO방식으로 프로그램을 실행하는 방식. 실행 요청 순서에 따라 순차적으로 프로그램을 실행한다. 단점 동시에 여러 프로그램을 실행하지 못한다 다중 사용자 지원이 불가능하다. 응답시간이 높아진다. 이를 보완하기 위해 멀티 시분할 시스템과 멀티프로그래밍이 등장했다. 시분할 시스템 : **다중 사용자 지원, 응답시간 최소화 출처 위의 사진과 같이 여러 프로그램이컴퓨터 자원을 짧은 시간 단위로 사용하는 것을 말한다. 멀티 태스킹 (Multi Tasking) : 동시에 실행하는 것처럼 보이도록 함 출처 단일 CPU에서, 여러 응용 프로그..

1. HTTP HTTP (Hyter Text Transfer Protocol) HTML과 같은 문서를 전송하기 위한 Application Layer (응용계층) Protocol이며 웹 브라우저와 웹 서버의 소통을 위해 개발되었다. HTTP의 가장 큰 특징으로는, 특정 상태를 유지하지 않는 Stateless 무상태성 이다. 무상태성이란 말 그대로 상태를 가지지 않는다는 의미이다. 서버와 클라이언트가 통신하는 과정에서 HTTP가 서버나 클라이언트의 상태를 확인하지 않는다.(HTTP는 단시 통신규약일 뿐이므로). 상태를 확인하는 방법으로는 쿠키 , 세션, API들을 통해 확인한다 2. HTTP messages 참고사이트 참고사이트 MDN HTTP messages는 Server와 Client 사이에서 데이터가 ..