리눅스셸 스크립트crontaboh-my-zsh리눅스는 유닉스 기반의 오픈소스 운영체제 입니다.그리고 여러 사용자가 들어와 사용하는 멀티 유저 시스템입니다.리눅스는 크게 3가지로 구성되어 있습니다.커널Linux커널은 Linux 운영 체제의 주요 구성 요소이며 컴퓨터 하드
node에서 웹 크롤링을 구현하기 위한 다양한 라이브러리를 사용할 수 있다.그 중 axios와 cheerio를 알아보자.axios란 브라우저, node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리이다.즉, url을 통해 서버에 요청하여
LRU LRU 알고리즘이란 가장 오랫동안 참조되지 않은 페이지를 교체하는 기법이다. 캐시 교체 알고리즘에 많이 사용된다. 3.1 캐시란? 캐시란 자주 사용하는 데이터를 미리 복사 담아두는 임시 장소를 의미한다. 예를들어 캐시는 메모리와 레지스터 사이에 존재하
프로그램이 실행되기 위해선 OS가 프로그램을 메모리에 로드 해야한다.이 때 메모리에 프로그램의 코드와 변수들이 로드 된다.따라서 메모리 공간을 다음과 같이 나눠 구분한다.프로그램에 있는 함수 코드, 제어문, 상수들이 저장되는 영역이다.실행할 코드는 프로그래머가 작성한
컴파일러 이론에서 구문 북석을 하기 위해 사용하는 Tokenizer, Lexer, Parser를 알아보자.Tokenizer란 어떤 구문에서 의미있을 법한 요소들을 token으로 쪼개어 나누는 역할을 한다.아래의 경우는 배열을 , 단위로 토큰을 나눈 것이다.Lexer란
클래스란?공통된 속성과 행위를 수행하는 객체의 집합이다. 즉 객체를 정의하고 만들어 내기 위한 설계도클래스는 속성을 나타내는 필드와, 행위를 나타내는 메소드로 구성된다.객체란?클래스로 구현한 실체된 대상이다.즉, '나'는 사람이라는 클래스의 객체라고 볼 수 있다.객체는
함수형 프로그래밍은 프로그래밍 패러다임의 한 종류이고 어떤한 언어에도 적용할 수 있다.스크린샷\_2021-07-28\_오후\_11 38 141급 객체란 다음 조건을 만족하는 객체를 말한다.변수나 데이터 구조안에 담을 수 있음.파라미터로 전달 가능반환값으로
자바스크립트는 어휘적 환경(Lexical Environment)이 존재한다.렉시컬 환경이란 특정 코드가 작성, 선언된 환경을 의미하며, 객체이다.렉시컬 환경을 왜 알아야하나?내가 사용하고자 하는 변수, 함수 등이 어떤 렉시컬 환경에 속해있는지에 따라 이용 가능한 변수가
DVCS (Distributed Version Control Systems ) 즉, 분산 버전 관리 입니다.중앙 서버에 있는 코드를 개발자 각각의 로컬 컴퓨터에 복사한 후, 복사된 프로젝트를 가지고 작업하며 서버에 업로드를 할 수 있습니다.즉, DVCS에서 흔하게 사용
프로세스란OS에서 메모리 영역을 할당받아 실행되는 독립적인 프로그램 인스턴스하나의 프로세스는 별도의 메모리 공간을 할당 받아 사용즉, 동적인 개념으로는 실행된 프로그램을 의미할당 받는 메모리 공간프로세스는 각각 독립된 메모리 영역 (code, data, stack, h
위의 코드를 실행하면서 setTimeout 내부동작에 대해 알아보자우선 맨 처음 hi를 출력할 때 스택과 콘솔은 다음과 같다.hi를 출력하고 setTimeout을 실행한 뒤 스택 변화는 다음과 같다.당연히 hi 출력문 다음인 setTimeout이 스택에 들어간다.그리고
어떤 프로그램을 만들다 보면, 어떤 클래스의 객체가 해당 프로세스내에서 딱 하나만 만들어져 있어야 할 때가 있다.웹의 다크모드를 예로 들면, 페이지를 이동하더라도 다크 모드 세팅은 그대로 유지되어야 한다.즉, 어떤 페이지에 있든 이 세팅을 관리하는 객체는 반드시 같아야
동기는 순차적으로 테스크를 수행하고, 비동기는 병렬적으로 수행한다.동기는 요청을 보낸 후 응답을 받아야지만 다음 동작이 이루어지는 방식을 말한다. 모든 일은 순차적으로 실행되며 어떤 작업이 수행 중이라면 다음 작업은 대기한다.예를 들자면, 카페에서 주문을 하나 받고 음
OSI 7계층이란 국제 표준화 기구 ISO에서 개발한 모델로서, 네트워크 프로토콜 디자인과 통신을 계층으로 나눠 설명한 것입니다.스크린샷\_2021-08-05\_오전\_2 06 58OSI의 최상위 7계층인 응용계층은 사용자 또는 어플리케이션이 네트워크에
date: '2021-08-08'title: 'TCP VS UDP'categories: 'CS'summary: '프로토콜 종류인 TCP와 UDP에 대해 알아보자.'thumbnail: './image/cs.jpeg'type: 'Blog'두 프로토콜은 모두 패킷을 한 PC
HTTP (Hyper Text Transfer Protocol)은 www상에서 정보를 주고 받을 수 있는 하나의 프로토콜이다. 주로 HTML을 주고 받는다.프로토콜이란 상호 간에 정의한 규칙을 의미하며 소스와 타켓이 데이터를 주고 받기 위해 정의 되었다.HTTP 프로토
통합 자원 식별자는 인터넷에 있는 자원을 나타내는 유일한 주소입니다. URI의 존재는 인터넷에서 요구되는 기본 조건으로서 인터넷 프로토콜에 항상 붙어 다닙니다. URI의 하위 개념으로 URL, URN이 있습니다.즉, URI는 URL과 URN을 아우르는 말로 볼 수 있다
데이터베이스란 여러 사람들이 공유하고 사용할 목적으로 통합 관리되는 데이터들의 모임이다.데이터 베이스는 크게 관계형 데이터베이스 (RDB)와 NoSQL로 나뉜다.열과 행을 가진 테이블로 구성되며, 이를 통해 구조적 데이터 관리를 할 수 있다.SQL을 이용하여 데이터베이
프록시 서버란 클라이언트와 서버간의 중계 서버로, 통신을 대리 수행하는 서버다.다운로드 (14) (1)클라이언트와 인터넷 사이에 위치한다.특징캐싱클라이언트 하나가 오늘의 날씨를 요청한다고 해보자. 그럼 프록시는 요청을 받고 인터넷으로 오늘의 날씨를 다시 요청한
HTTP/1.0은 기본적으로 한 연결당 하나의 요청을 처리하도록 설계되어있다.따라서 하나의 요청을 처리하기 위해 매번 3-way handshaking 과정이 필요하다.이는 RTT (패킷이 목적지에 도달하고 나서 다시 출발지로 돌아오는 왕복 시간)를 증가시킨다.이를 해결
쿠키는 브라우저 로컬에 저장되는 key, value로 구성된 데이터 파일이다.쿠키를 이용하여 서버에서 브라우저에 데이터를 넣을 수 있다.브라우저에 300개까지 쿠키 저장이 가능하고, 하나의 도메인당 20개의 값만 가질 수 있다.하나의 쿠키는 최대 4KB이다.쿠키는 서버