[OS] CPU 스케쥴링
2023. 1. 30. 23:40
Today I learned
CPU 스케쥴링 알고리즘 등장배경 프로세스가 CPU를 점유하여 작업을 수행하는 도중 I/O 또는 Interrupt가 발생하면 일시적으로 프로세스는 CPU를 사용하지 않게 된다. 하지만 계속해서 CPU를 점유하고 있다. 이러한 상황을 줄여, CPU를 최대한 활용하면 시스템의 성능을 끌어올릴 수 있다. 어떻게 프로세스들이 CPU를 효율적으로 사용할 것인가? 라는 고민에서 CPU 스케쥴링 알고리즘이 시작되었다. 스케쥴링 알고리즘은 한정된 자원으로 최고의 성능을 내기 위해 자원을 어떤 프로세스에 얼마나 할당할 지 정책을 만드는 것을 말한다. CPU 스케쥴링 방식의 종류 CPU 스케쥴링 방식은 크게 선점 스케쥴링과 비선점 스케쥴링으로 구분된다. 선점 스케쥴링은 가장 자원이 필요한 프로세스에게 CPU를 먼저 분배하..
[Network] URI 와 URL 의 차이점
2023. 1. 29. 14:58
Today I learned
URI 와 URL 의 차이점 URI 는 Uniform Resource Identifier 의 약자이며, 특정 리소스를 식별하는 통합자원식별자를 의미한다. 웹기술에서 사용하는 논리적, 물리적 리소스를 식별하는 고유한 문자열 시퀀스이다. URL은 Uniform Resource Locator 의 약자이며, 흔히 웹주소라고 하며 컴퓨터 네트워크 상에서 리소스가 어디에 위치하는지 알려주기 위한 규약이다. URL은 특정 리소스에 접근하기 위한 주소이고, URI는 URL을 포함하여 스키마나 프토토콜의 정보까지 담고 있다.
[JavaScript] require/exports 와 import/export 차이
2023. 1. 29. 14:48
Today I learned
require/exports require/exports 방식은 기존에 Node.js 에서 사용되던 CommonJS 모듈 방식으로, module.exports 객체에 모듈 전체를 담아 내보내고 require를 통해 해당 모듈을 불러오는 방식이다. 따라서 require를 사용하면 모듈 전체를 불러오게 되는데, 불필요한 모듈이 로드되기도 하고 어떤 부분을 모듈 내에서 사용했는지 알 수 없다. import/export import/export 방식은 ES6에 새로 등장한 ES 모듈 방식으로, import를 사용해 모듈을 가져온 뒤 만든 객체를 내보내기 위해 export를 사용하는 방식이다. 실제로 쓰이는 부분만 불러와 사용하기 때문에 메모리를 절약할 수 있다. export 를 사용하는 방식은 require와는..
2020-11-11
2020. 11. 11. 22:29
Today I learned
1. 한줄라인 글자 수 제한 오늘의 할 일은 코딩 공부를 8시간 이상 하는 것이다. .txt-line { width: 70px; padding: 0 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } Block 레벨에서 적용된다. overflow: hidden : 너비가 70px을 넘어서는 내용에 대해서는 보이지 않게 처리한다. text-overflow: ellipsis : 글자가 너비 70px을 넘을 경우 생략 부호를 표시함. white-space: nowrap : 공백문자가 있는 경우 줄바꿈하지 않고 한 줄로 나오게 처리한다. 2. Element.classList Element.classList : 읽기 전용 프로퍼티 clas..
2020-02-06 모듈
2020. 2. 6. 11:26
Today I learned
생활코딩 JavaScript 강의를 듣고 내 나름대로 정리해본 내용이다. https://opentutorials.org/course/743/4750 모듈 - 생활코딩 프로그램은 작고 단순한 것에서 크고 복잡한 것으로 진화한다. 그 과정에서 코드의 재활용성을 높이고, 유지보수를 쉽게 할 수 있는 다양한 기법들이 사용된다. 그 중의 하나가 코드를 여러개의 파일로 분리하는 것이다. 이를 통해서 얻을 수 있는 효과는 아래와 같다. 자주 사용되는 코드를 별도의 파일로 만들어서 필요할 때마다 재활용할 수 있다. 코드를 개선하면 이를 사용하고 있는 모든 애플리케이션의 동작이 개선된다. 코드 수정 시에 필요한 로직을 빠르게 찾을 수 opentutorials.org //모듈 1강 모듈이란? 크고 복잡한 프로그램은 수많은..
2020-02-05 JavaScript-객체
2020. 2. 5. 21:44
Today I learned
생활코딩 JavaScript의 강의를 듣고 나름대로 정리한 내용이다. https://opentutorials.org/course/743/6491 객체 - 생활코딩 객체(Object) 지금까지 살펴본 배열은 아이템에 대한 식별자로 숫자를 사용했다. 데이터가 추가되면 배열 전체에서 중복되지 않는 인덱스가 자동으로 만들어져서 추가된 데이터에 대한 식별자가 된다. 이 인덱스를 이용해서 데이터를 가져오게 되는 것이다. 만약 인덱스로 문자를 사용하고 싶다면 객체(dictionary)를 사용해야 한다. 다른 언어에서는 연관배열(associative array) 또는 맵( map), 딕셔너리(Dictionary)라는 데이터 타입 opentutorials.org //객체 1강 객체의 문법 객체 : 연관된 데이터를 담는 ..
2020-02-05 JavaScript-배열
2020. 2. 5. 20:06
Today I learned
생활코딩의 JavaScript 강의를 들으면서 나름대로 정리한 내용이다. https://opentutorials.org/course/743/4736 배열 - 생활코딩 배열 배열(array)이란 연관된 데이터를 모아서 통으로 관리하기 위해서 사용하는 데이터 타입이다. 변수가 하나의 데이터를 저장하기 위한 것이라면 배열은 여러 개의 데이터를 하나의 변수에 저장하기 위한 것이라고 할 수 있다. 아래의 예제를 보자. 변수 name에는 문자 egoing이 할당되었다. 이제부터 name을 호출하면 문자 egoing을 사용할 수 있다. var name = 'egoing' alert(name); 배열의 생성 그렇다면 여러 개의 데이 opentutorials.org // 배열 1강 배열의 문법 배열(array) : 연관..
2020-02-05 JavaScript - 함수
2020. 2. 5. 20:00
Today I learned
생활 코딩 강의를 들으면 내 나름대로 정리한 내용이다. https://opentutorials.org/course/743/4729 함수 - 생활코딩 함수 함수(function)란 하나의 로직을 재실행 할 수 있도록 하는 것으로 코드의 재사용성을 높여준다. 함수의 형식 함수의 형식은 아래와 같다. function 함수명( [인자...[,인자]] ){ 코드 return 반환값 } 함수의 정의와 호출 함수는 function 뒤에 함수의 이름이 오고, 소괄호가 따라온다. 소괄호에 인자라는 값이 차례로 들어오는데 이 값은 함수를 호출할 때 함수의 로직으로 전달될 변수다. 인자는 생략 할 수 있다. 함수를 호출 opentutorials.org // 함수 1강 함수(function)란 하나의 로직을 재실행할 수 있도..