<aside> 📌 요약: 리눅스는 오픈소스로 많은 배포판이 있고 그 중 대중적으로 우분투를 많이 사용한다. 리눅스의 구조는 하드웨어 > 커널 > 쉘 > 응용프로그램이다. apt는 Advanced Pacakiging Tool의 약자로 리눅스에서 소프트웨어를 설치, 제거, 업데이트할때 사용한다. 리눅스의 파일구조는 트리구조로 되어있다. 파일에는 소유자가 있고 권한이 존재한다. 정규표현식은 특정한 규칙을 가진 문자열을 걸러내는 식이다. File Redirection과 Pipe를 사용하여 CLI 환경에서 간결하고 효율적인 명령어를 만들어낼 수 있다. 리눅스는 자동으로 파일 시스템을 연결해주지 않는다. Mount를 통해 연결한다. init프로세스는 모든 프로세스의 부모 프로세스이며, kthreadd프로세스는 모든 스레드의 부모 프로세스이다. 프로세스 메모리는 크게 kernel space와 사용자 주소 공간(stack, heap, data, text)로 구분 가능하다.
</aside>