전체 글
운영체제 (Operating System)
Operating System 운영체제 l 커널 l 부트스트랩 (Bootstrap Loader) l 프로그램의 주소 공간 l OS(커널)의 주소 공간 l 링커/로더 l 버퍼링 & 스풀링 l 인터럽트 l 시스템 콜 (모니터 호출) 컴퓨터 시스템 구조, 프로세서 프로세스 l 프로세스 제어 블록 PCB (Process Control Block) l 컨텍스트 스위치 / 문맥 교환 (Context Switch) 스레드 l 멀티 스레드 l 스레드 제어 블록 (TCB, Thread Control Block) l 스레드 풀 프로세스와 스레드 차이 스케줄링 동기화 관련 문제들 l 동기화 기법 l 모니터 l 교착 상태 (DeadLock) 메모리 관리 전략 l 스와핑 l 메모리 단편화 가상 기억장치 l 가상메모리 관리 기법..
컴퓨터 공학 전공 지식 요약 모음집
목차 Operating System Computer Network Database Data Structure Algorithm OOP Web Design Pattern Security ETC
[실전 압축 알고리즘] - C++ 입출력
본 게시글은 실전 기술을 정리해 놓은 '실전 압축' 입니다. 입출력 언어 입력 출력 C++ scanf / cin printf / cout Java Scanner System.out Python input print C++ #define _CRT_SECURE_NO_WARNINGS #include int main() { int n; scanf("%d", &n); printf("%d", n); return 0; } #define _CRT_SECURE_NO_WARNINGS는 Visual Studio에서만 넣어주면 됩니다. scanf는 나온 지 오래된 함수라 입력 값의 길이를 설정할 수가 없습니다. 따라서 보안에 취약하기 때문에 Visual Studio에서는 사용하지 말라는 경고가 출력되고 컴파일 에러가 발생하는..
[실전 압축 알고리즘] - 시간, 공간 복잡도
본 게시글은 실전 기술을 정리해 놓은 '실전 압축' 입니다. C++ 기준으로 작성하였습니다. 시간 복잡도 작동하는 알고리즘의 수행시간을 정량화하는 것을 의미합니다. 시간 복잡도를 표기하기 위한 방법에 빅-오, 빅-오메가, 세타 등이 있으며 일반적으로 최악의 케이스(Worst Case)를 가정하고 계산 하므로 빅-오 표기법을 빅오 표기법은 최고차항의 차수만을 표기합니다. N^3 + N^2 + N + 1 = O(N^3) 숫자 빨리 읽기 0을 3개씩 묶어서 숫자 단위를 빠르게 파악하도록 암기합니다. 숫자 읽기 1'000 천 1'000'000 백만 1'000'000'000 10억 배열을 만들 때 arr[10000000] 보다는 arr[10'000'000] 이런식으로 작은 따옴표를 넣어서 가독성을 높이고 실수를 ..