GitHub

https://github.com/Choidongjun0830

2024/09/17 2

3.3 프로세스와 쓰레드

'면접을 위한 CS 전공지식 노트' 책을 보며 공부한 내용입니다. 프로세스는 컴퓨터에서 실행되고 있는 프로그램을 말한다. CPU 스케줄링의 대상이 되는 작업이라는 용어와 같은 의미로 쓰인다.쓰레드는 프로세스와 내 작업의 흐름을 말한다. 프로그램이 메모리에 올라가면 프로세스가 되는 인스턴스와가 일어나고, 이후 운영체제의 CPU 스케줄러에 따라 CPU가 프로세스를 실행한다. 프로세스와 컴파일 과정프로세스는 프로그램이 메모리에 올라 인스턴화가 된 것이다. 컴파일러가 컴파일 과정을 통해 컴퓨터가 이해할 수 있는 기계어로 변역하여 실행할 수 있는 파일을 만들게 된다.  컴파일 과정전처리: 소스 코드의 주석을 제거하고, #include 등 헤더 파일을 병합하여 매크로로 치환한다.컴파일러: 오류처리, 코드 최적화 작..

CS 2024.09.17

[프로그래머스] 압축 / 2018 KAKAO BLIND RECRUITMENT

[3차] 압축문제 설명압축신입사원 어피치는 카카오톡으로 전송되는 메시지를 압축하여 전송 효율을 높이는 업무를 맡게 되었다. 메시지를 압축하더라도 전달되는 정보가 바뀌어서는 안 되므로, 압축 전의 정보를 완벽하게 복원 가능한 무손실 압축 알고리즘을 구현하기로 했다.어피치는 여러 압축 알고리즘 중에서 성능이 좋고 구현이 간단한 LZW(Lempel–Ziv–Welch) 압축을 구현하기로 했다. LZW 압축은 1983년 발표된 알고리즘으로, 이미지 파일 포맷인 GIF 등 다양한 응용에서 사용되었다.LZW 압축은 다음 과정을 거친다.길이가 1인 모든 단어를 포함하도록 사전을 초기화한다.사전에서 현재 입력과 일치하는 가장 긴 문자열 w를 찾는다.w에 해당하는 사전의 색인 번호를 출력하고, 입력에서 w를 제거한다.입력..

728x90