목록Inflearn (58)
개발자는 기록이 답이다
메모리계층 메모리도 그냥 메모리만 있는게 아니라 계층적으로 이루어져 있습니다. 메모리 계층(memory hierarchy)은 레지스터, 캐시, 주기억장치, 보조기억장치로 구성되어 있습니다 레지스터:CPU내의작은메모리,휘발성,속도가장빠름,기억용량이가장적음. 캐시: CPU내의 L1, L2 캐시를 지칭합니다. 휘발성, 속도 빠름, 기억 용량이 적음. 주기억장치: RAM을 가리킵니다. 휘발성, 속도 보통, 기억 용량이 보통 보조기억장치: HDD, SSD를 일컬으며 비휘발성, 속도 낮음, 기억 용량이 많습니다. 계층이 존재하는 이유 1. 더 빠른 접근과 처리속도가 증가 우리는 보통 많이 쓰는 것을 다시 많이 씁니다. 이 때문에 특정 데이터에 많이 접근하게 되는데 좀 더 작은 캐시 메모리에 해당 데이터가 있다면 더..
시스템콜 시스템콜이란 운영체제가 커널에 접근하기 위한 인터페이스이며 유저 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출할 때 이를 거쳐서 호출하도록 설계되어있습니다. 프로세스 관리(생성, 삭제 등), 파일관리, 디바이스 관리, 시간 및 날짜 관련 시스템, 프로세스 간 통신 때 이를 통해 커널함수를 호출합니다. 예를 들어 프로세스를 종료하는 kill()이라는 함수가 있습니다. 이 함수를 발동시키면 시스템콜을 거쳐서 커널함수가 호출되게 됩니다. 시스템 콜의 과정 만약 유저프로그램이 I/O 요청을 위한 트랩을 발동했다고 하면 다음과 같은 과정이 발생됩니다 유저 프로그램이 I/O 요청 트랩발동합니다. 올바른 I/O 요청인지 확인합니다. 유저 모드가 시스템콜을 통해 커널모드로 변환합니다. 이후 커널함..
인터럽트 운영체제는 인터럽트에 의해 구동됩니다. 인터럽트(interrupt)는 어떤 신호가 들어왔을 때 CPU를 잠깐 정지시키는 것을 말하며, 0으로 숫자를 나누는 산술 연산오류, 프로세스 오류 등으로 발생합니다. 또한 오류뿐만 아니라 키보드, 마우스 등 IO 디바이스를 사용할 때의 인터럽트, 우선순위가 높은 프로세스의 발생 등으로 발생합니다 멀티태스킹은 우리가 크롬 브라우저를 실행하고 파일을 다운로드하거나 다양한 작업을 동시에 수행하는 것과 같이 여러 작업을 동시에 처리하는 기능을 의미합니다. 내부적으로, 멀티태스킹을 수행하는 동안 인터럽트가 발생합니다. 각 작업이 실행되는 동안 컴퓨터는 인터럽트를 받아들이고 해당 작업에 대한 명령어를 수행합니다. 인터럽트는 멀티태스킹 환경에서 다양한 이벤트(예: 파일..
운영체제의 종류 운영체제는 사용자와 시스템 자원 간의 상호작용을 관리하는 중요한 역할을 합니다. 이를 위해 가장 앞단에서 다양한 인터페이스가 사용됩니다. 주로 두 가지 인터페이스로 나뉩니다. GUI (Graphical User Interface) 그래픽 요소를 사용하여 컴퓨터와 상호작용하는 인터페이스를 제공합니다. 대표적인 예로는 Windows, macOS 등의 현대 운영체제가 있습니다. CUI (Character User Interface) 사용자가 키보드를 사용하여 텍스트 기반으로 컴퓨터와 상호작용하는 인터페이스입니다. 예전 운영체제인 MS-DOS가 대표적이며 1994년에 단종되었습니다. 운영체제의 역할 운영체제는 커널을 중심으로 여러 가지 핵심 기능을 수행합니다. 이러한 기능들은 다음과 같습니다: ..