사용자 모드 커널 모드 CPU 반환 시점이 궁금합니다.
355
작성한 질문수 3
궁금한 점
강의 내용에서 I/O작업이 필요할 경우
System Call 요청 -> Mode Bit 0 변경 -> I/O 리소스 할당
의 과정으로 시스템이 호출된다고 되어있는데 CPU를 할당 받을 때도 커널모드가 필요한지 궁금합니다.
이유
강의 자료를 확인해보면 다른 리소스들과 같이 CPU가 존재
답변 2
0
cpu 할당은 OS 스케줄러의 역할입니다.
그래서 커널모드에서 처리가 이루어집니다.
그림은 하드웨어가 맨 아래 위치하고 그 위에 OS , 그리고 맨 위에 어플리케이션이 위치해 있다는 의미입니다.
0
안녕하세요, 인프런 AI 인턴입니다.
말씀하신 내용에 대한 구체적인 정보는 제공된 자료에 기재되어 있지 않지만, 일반적으로 시스템 콜을 통해 커널 모드로 전환되는 것은 사용자 모드에서는 수행할 수 없는 작업을 요청할 때 필요합니다. CPU 할당과 관련해서는 운영 체제의 스케줄러가 프로세스에 CPU 사용 시간을 배분하는 것으로, 특정 프로세스가 CPU를 할당받는 것은 일반적으로 사용자 모드에서 실행 중인 프로세스의 정상적인 일부로 간주됩니다. 하지만 시스템 리소스의 배분과 관리는 궁극적으로 운영 체제의 커널이 담당하므로, 프로세스 스케줄링이나 시스템 콜을 통한 자원 요청과 같은 작업에서 커널 모드의 관여는 필수적입니다.
제공된 이미지 설명을 통해, I/O 작업, 프로세스 생성, 출력 요청, 프로세스 종료 등의 작업을 수행하기 위해 시스템 콜을 통해 사용자 모드에서 커널 모드로 전환하는 과정이 필요함을 알 수 있습니다. 커널 모드에서는 시스템의 하드웨어 자원을 직접 관리하고 운영하는 작업이 이루어집니다. 따라서 CPU를 포함한 I/O 장치, 메모리 등의 자원에 대한 관리와 할당도 커널의 역할이며, 시스템의 효율적인 관리를 위해 필요한 경우 커널 모드에서 수행될 수 있습니다.
단, CPU 할당 과정 자체에 커널 모드가 필수적이라는 구체적인 내용은 운영 체제의 설계와 구현에 따라 다를 수 있으며, 특정 운영 체제의 문서나 참고 자료를 통해 더 상세한 정보를 확인하는 것이 좋습니다.
멀티스레드 단일스레드
0
56
0
new Condition 부분 질문
0
83
1
13:00 강의 내용 이해 질문
0
99
1
강의 출시 질문 있습니다.
0
117
1
InterruptedExceptionThreadStopExample 질문입니다.
0
94
2
instance.getMyField()의 값이 왜 다른가요?
0
115
1
해당 강의 내용 무단 도용 신고
0
211
2
Thread Waiting 상태 관련 질문 드립니다.
0
186
1
단일연산변수 api
0
126
0
synchronized 블럭과 메인메모리 반영
0
147
0
실무에서 자바가 제공하는 락을 사용하는 경우
1
243
1
뮤텍스나 세마포어는 busy waiting이 없는 게 맞을까요?
0
159
1
16:50부분에서 타입락 질문드립니다.
0
110
2
16분 7초 뮤텍스 코드 관련해 질문드립니다.
0
160
2
동기화가 보장된다고 하더라도 스레드간 데이터 불일치가 발생할 수 있지 않나요??
0
199
2
리액티브-part2
0
180
2
문자열 풀 값을 이용한 String 변수
0
207
2
스레드 라이브러리는 커널과 같은 역할을 하지 못하나요?
0
173
1
자식 프로세스를 쓰는 이유
0
186
1
커널 모드 전환시 질문이 있습니다!
0
146
1
[공유] setName 시 threadName이 1부터 시작하는 이유
0
178
1
synchronized = 모니터
0
285
2
Thread의 Context Switching 문의드립니다.
1
257
1
동기 & 논블록킹 질문 드립니다.
0
232
2





