운영체제(Operating System, OS)의 역할: 시스템의 자원을 관리하는 관리자 시스템 자원 = 컴퓨터의 하드웨어(CPU/Memory/IO/Disk) 운영 체제의 역할 시스템 자원의 분배 각 프로세스마다 CPU를 얼마나 사용하도록 할 지에 대한 분배
인터럽트 인터럽트란? > * 소프트웨어나 하드웨어로 인해 발생하는, CPU의 처리가 필요한 이벤트를 CPU에 알려서 처리하도록 하는 기술 일종의 이벤트로, 발생하는 이벤트에 맞게 운영체제에서 처리 인터럽트를 실행하기 위한 opcode(명령 코드)는 in
정적공간(READ ONLY) \* CODE: 컴파일된 코드가 저장되어 있는 공간DATA: 초기화 된 gobal / static 변수 등이 저장되는 공간BSS: 초기화 되지 않은 global/static 변수 등이 저장되는 공간동적 공간 \* STACK: 함수 내에서
프로세스간의 접근권한이 낮은 경우, 예를 들어 A프로세스에서 B프로세스의 데이터/코드를 바꿀 수 있다면 이는 보안 상 매우 위험하므로, 이러한 커뮤니케이션 방식은 제공되지 않는다. 다만 프로세스 간 커뮤니테이션이 필요한 경우 제공되는 기법이 IPC이다. 프로세스 간
프로세스는 실행중인 프로그램으로, 운영체제로부터 자원을 할당받는 작업의 단위로서 디스크로부터 메모리에 올라가 CPU 자원을 할당받는 것을 말한다. 쓰레드는 프로세스의 실행 단위로, 하나의 프로세스 내에서 여러 개의 실행 흐름을 가진 쓰레드가 존재하며 프로세스의 자원이나
리눅스를 기준으로 보면 프로세스 하나당 메모리는 4GB를 사용한다. 반면 우리 메모리는 16GB? 32GB? 이정도에 불과하다. 현재 우리가 통상 사용하는 컴퓨터는 폰 노이만 구조이므로 프로셋스는 메모리를 할당받아 그 위에서 동박작해야 하지만, 모든 프로세스를 전부 실
리눅스의 indoe 파일 시스템은 다음과 같은 구조를 가진다.수퍼 블록: 파일 시스템의 정보와 파티션의 정보를 가지고 있다.INODE 블록: 파일의 상세 정보데이터 블록: 실제 데이터가 저장된 블록파일은 indoe 고유값과 자료구조에 의해 주요한 정보가 관리된다. 각