이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다! 이전에 Process의 상태와 상태 전이에 대해 포스팅을 했다. 그 중 running → waiting은 Interrupt(time-out)에 의해 상태 전이가 발생하는데, Interrupt에 대해 더 자세히 알아보자. ✅ Interrupt란? 왜 사용할까? Interrupt(인터럽트)란, 마이크로프로세서(CPU)가 프로그램을 실행하고 있을 때, 입출력 하드웨어 등의 장치에 예외사항이 발생하여 처리가 필요한 경우에, 마이크로프로세서(CPU)에게 알려 처리할 수 있도록 하는 것을 말한다. 출처: wikipedia 조금 더 풀어서 이야기해보기 위해, Core가 하나인 CPU를 예로 들어보자. ..
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다! ✅ Process State (프로세스 상태) 실행되고 있는 각 프로세스는 고유의 상태(state)를 가지고 있고, 프로세스가 생성되서 종료될 때까지 상태(state)가 변한다. 프로세스의 상태의 종류에는 5가지가 있으며, 운영체제는 프로세스 스케쥴링 전략을 통해 프로세스의 상태를 변경하여 관리하고 제어한다. 프로세스 상태 설명 new 프로세스를 생성하려는 단계이며, 아직 프로세스가 생성되지 않은 상태이다. 아직은 보조 메모리에 있는 프로그램으로 OS가 프로세스 생성을 위해 사용할 것이다. ready 프로세스 생성이 완료되어 메인 메모리에 적재되었으며, processor의 할당을 기다리고 ..
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다! ✅ 프로세스 주소 공간이란? 이전 포스팅에서 프로세스에 대해 소개하면서, 우리는 프로세스에 대해 1) 실행 중인 프로그램, 2) 운영체제가 자원을 할당하는 단위 라고 이야기했다. 프로그램이 실행되면 메모리를 할당받는데, 프로세스는 이 할당받은 메모리를 관리하기 위해 특정 구조를 만든다. 이것을 프로세스 주소 공간(Process Address Space)이라고 한다. ✅ 프로세스 주소 공간 프로세스 주소 공간은 크게 네 가지의 영역으로 나눌 수 있다. 1️⃣ Text(Code) Segment 프로그램 실행에 필요한 코드들이 CPU가 해석할 수 있는 기계어로 저장되어 있는 공간을 말한다. 프로..
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다! ✅ 프로그램(Program) 프로세스와 스레드를 이야기하기 전에 먼저 프로그램(Program)에 대해 이야기해 보자. 🎯 프로그램(Program)이란? 먼저 프로그램(program)은 실행 파일(명령어 리스트들로 이루어진 파일)이 디스크에 저장된 수동적인 존재(passive entity)이다. 우리가 흔히 실행하는 ~~~. exe 파일이 바로 프로그램이다. 이 파일에 대해 어떤 행동을 취하지 않고 그대로 둔다면, 이 파일은 아무런 기능도 하지 않는다. 한 마디로 코드 덩어리이다. 이 파일이 사용되기 위해서는 실행이 되어 메모리에 적재되어야 한다. ✅ 프로세스(Process) 🎯 프로세스(Pr..
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다! ✅ 운영체제(Operating System)이란? 운영체제(OS, Operating System)은 1️⃣ 컴퓨터 하드웨어를 관리하고, 2️⃣ 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 3️⃣ 응용 프로그램과 하드웨어 간의 인터페이스를 지원하는 시스템 소프트웨어이다. 즉, 운영체제는 다양한 사용자를 위해 다양한 응용프로그램 간의 하드웨어 사용을 제어하고 조정하는 역할을 한다. Windows, Linux, UNIX, max OS 등이 대표적인 운영체제의 예이다. ✅ 운영체제를 바라보는 관점 운영체제의 역할은 사용자의 관점(User view)와 시스템의 관점(System view), 두 관점..
안녕하세요, 오늘은 블로그 글이 아닌, 링크 공유를 하고자 글을 작성했습니다. 그 동안 블로그에 글을 작성하는 것이 뜸했는데, 공부했던 내용들을 블로그가 아닌 Notion에 끄적끄적 적는 습관이 들다보니 그렇게 된 것 같습니다.😅 Notion의 inline-database를 적극 활용하고 있었는데요, 마크다운 문법에 익숙해지다보니 블로그 글을 작성하기가 은근 어렵더라구요 😂 (velog는 마크다운으로도 작성이 가능하다던데, velog도 고려해보고 있습니다🧐) 블로그를 시작했던 이유가 지식 공유를 위함인데 Notion에만 글을 작성하다보니 아쉬워져, 제가 그 동안 공부한 내용들을 저장해놓은 저장소 링크라도 공유하고 싶어 글을 작성했습니다! 밑의 링크를 타고 가시면, 주제와 태그 별로 글들이 작성되어 있는 ..