월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨그림으로 쉽게 배우는 운영체제
컴파일 타임 런타임
컴파일 타임과 런타임 정의와 차이 좀 소개 시켜주세요.. 기본적으로 "타임"이 뭘말하는지 모르겠어요. 도움부탁드립니다.
- 해결됨그림으로 쉽게 배우는 운영체제
rpc와 소켓(tcp)차이
컴퓨터간 통신에 있어서 소켓을 사용한다고 했는데 이게 rpc 방식하고는 다른건지 헷갈리는데 정리좀 부탁드립니다. 감사합니다.
- 해결됨그림으로 쉽게 배우는 운영체제
강의자료
안녕하세요 강사님! 혹시 강의 자료가 있다면 받아 볼 수 있을까요??
- 해결됨그림으로 쉽게 배우는 운영체제
대기상태의 다중큐
예시에서 하드디스크 작업이 완료되면 하드디스크 큐에서 뒤져서 작업을 꺼내간다고 하셨는데 그럼 대기상태의 작업들은 먼저 들어온게 먼저 나가는 게 아니라 먼저 들어와도 나가는 건 I/O 작업이 끝난 순으로 나가는 건가요??
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스의 생성 과정
영상 초반에서 프로세스의 생성과정 중 프로세스를 메모리에 올리고나서 PCB를 생성한다고 하셨는데예전 영상에서는 PCB를 생성하고 메모리에 적재 요청을 한다고 하셨는데 어떤 게 맞나요?
- 해결됨그림으로 쉽게 배우는 운영체제
예제 코드 질문입니다
자식 코드도 부모 프로세스의 코드와 완전히 동일 하다면 int pid; pid = fork(); 부분도 자식 프로세스가 실행하게 되나요?? 그러면 자식 프로세스는 또 하나의 자식 프로세스를 계속 재귀적으로 생성하는 거 아닌가요??
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 스레드 질문있습니다
CPU를 말할 때 4코어 4스레드, 8코어 8스레드 혹은 하이퍼쓰레딩이 적용된 CPU는 8코어 16스레드 등으로 말하는데 여기서 말하는 스레드가 커널 스레드인거고, 자바에서 생성한 스레드는 유저스레드인걸까요? 그리고 CPU는 프로세스를 처리하는 것인가요? 아니면 프로세스안에 들어있는 각각의 스레드를 붙잡고 처리하는 것인지 궁금합니다. 혼자 테스트를 해보니 4코어 머신에서는 동시에 4개의 스레드가 작업되고, 8코어 머신에서는 8개의 스레드가 돌아가더라구요. 이말인즉슨, 8코어 머신에서 동시에 8개의 CPU가 자바 스레드를 처리했다는 것 같은데, 이 부분이 잘 이해가 가지 않아서 질문 남깁니다! 제 컴퓨터에서 돌고있는 프로세스가 최소 수십개는 될것이고, 그중 하나가 JVM일건데, JVM 하나를 모든 CPU가 작업했다는의미로 생각되어서요. 하기 GIF는 8코어 머신에서 멀티스레드 프로그래밍을 했을때의 결과입니다. 그리고 정말 좋은 강의 감사드립니다. 🙇♂️
- 해결됨그림으로 쉽게 배우는 운영체제
가상 메모리 개요에서 질문
가상 메모리 부분에서 "가상 메모리는 물리 메모리의 크기와 CPU의 비트수로 결정된다"고 하셨는데 여기서 궁금점이 생깁니다. 만약에 어떤 CPU A가 표현할 수 있는 메모리의 주소 크기 최대값이 16GB라고 가정하겠습니다 첫번째 경우, 물리 메모리(실제로 시금치 램)가 16GB 메인보드에 연결되어 있으면 하드디스크 안의 스왑영역을 사용하지 않는 것인가요?? 어차피 가상메모리의 용량은 16GB가 최대인 상황인데 물리메모리로 16GB 다 있으니까 하드디스크의 스왑영역을 사용할 수 없고, 사욯할 필요도 없는 것 같습니다. 두번째 경우, 물리메모리가 8GB 만큼 메인보드에 연결되어 있어도 가상 메모리는 16GB가 되는 것인가요? 물리 메모리에서 8GB을 가져다 쓰고 하드디스크의 스왑영역에서 8GB를 가져다 쓰는 방식으로 작동하는지 궁금합니다. 세번째 경우, 가상메모리가 이론상 무제한이라고 하셨는데 그 이유가 하드디스크의 스왑영역 덕분인가요? 위 CPU 예시에서 가상메모리의 크기는 16GB가 될 것입니다 만약 지금 프로세스들의 메모리 요구사항이 총 100GB라고 가정하면 일단 급한대로 16GB의 가상메모리에 프로세스들을 나눠 담고 남은 84GB는 스왑영역에 넣었다가 필요할 때 마다 스왑해서 사용하면 되니까 이론적으로는 가상메모리가 무한대라고 하신건지 궁금합니다.
- 해결됨그림으로 쉽게 배우는 운영체제
입출력 제어기 등
1. 입출력 제어기는 일종의 또다른 CPU와 같은 건가요? 2. 버스의 개념은 일종의 통로 같은 것으로 이해했는데 실제로도 그냥 통신선 같은 것인가요?
- 해결됨그림으로 쉽게 배우는 운영체제
빌드라는 용어
test.c 에서 test.exe로 변환하는 전과정을 통틀어 빌드라고 부르는 것으로 알고 있습니다. 이게 맞을까요? 아니면 컴파일부분만 빌드라고 하나요
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 생성과 종료 질문3
답변 감사합니다 여기서 답변을 보고 추가적으로 궁금한 점이 생겼습니다 "그럼 이렇게 init 프로세스를 복사해 터미널이나 그에 필요한 프로세스가 생성되는데 보통 사용자가 실행하는 프로그램은 서로 자식-부모 관계를 가지지 않기 때문에 걱정하시는 것처럼 LOL.exe 프로세스를 종료해도 웹브라우저가 종료하는 일은 발생하지 않습니다!" 라고 답변을 주셨는데요 그렇다면 사용자가 실행하는 프로그램들은 부모 프로세스 없이 독립적으로 프로세스가 생성되는 것인가요? 아니면 그려주신 트리 모양에 적힌 기본적인 프로세스(?)들이 부모 프로세스가 되어서 자식 프로세스로 생성되는 것인가요? 즉 유닉스 OS에서는 모든 프로세스들이 부모 - 자식간의 관계를 가지면서 프로세스들이 생성되는 것인지 궁금합니다 웹브라우저와 LOL.exe가 서로 부모-자식 관계가 아니더라도 그렇다면 컴퓨터 부팅이후 최초로 웹브라우저를 실행했다고 가정했을시 웹브라우저는 어떤 프로세스(기본 프로세스가 되었든 임의의 프로세스가 되었든)의 자식 프로세스로써 생성이 되는건지 아니면 사용자가 실행하는 프로그램이므로 독립적인 프로세스로 생성되는 것인지가 궁금합니다. 두번째 질문으로 앞으로 해주시는 운영체제 대한 설명은 전부 유닉스 OS에만 적용되는 설명인 것인가요 아니면 윈도우 OS나 유닉스 OS나 공통적인 것이지만 일부 차이점이 있는 경우가 있는 것인가요 세번째 질문, 윈도우의 경우 보내주신 링크에서 "독립적으로 실행 되는 새 프로세스를 만듭니다. 그러나 편의상 관계를 부모-자식 관계 라고 합니다." 라는 설명으로 보아 부모 프로세스가 먼저 종료되더라도 자식 프로세스가 좀비 프로세스가 될 것 같지 않은데(서로 독립적인 프로세스 이므로) 제 생각이 맞나요?
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 생성과 종료에서 질문2
.exe 파일을 실행 OS는 해당 프로그램의 코드영역과 데이터 영역을 메모리에 로드하고 빈 스택과, 빈 힙을 생성 PCB 생성 후 초기화 위 과정은 OS가 부팅된 후 0번 프로세스가 생성될 때 딱 한 번만 실행된다고 하셨습니다 여기서 궁금한 점이 0번 프로세스의 종류는 가리지 않는 것인가요??? 예를 들어, 제가 컴퓨터를 부팅한 직후 LoL.exe를 실행했다고 가정하면 0번 프로세스가 LOL 프로세스가 될 것입니다 이 때 다음 작업으로 웹브라우저를 더블 클릭하게 되면 웹브라우저 프로세스도 LOL.exe를 실행할 때 만들었던 0번 프로세스를 복사해서 만들어 지게 되는 것인가요?? (첫번째 질문) 만약 그렇다면 제가 LOL을 종료하면 0번 프로세스가 닫히게 되는데, 웹브라우저 프로세스 입장에서는 부모 프로세스가 닫히게 된 것이니까 바로 좀비 프로세스로 변하게 되는 것인가요??? (두번째 질문) 만약 위와 같은 가정이 참이라면 제가 컴퓨터를 부팅한 이후에 가장 먼저 실행한 프로세스가 뭔지에 따라서 (OS 부팅 후웹브라우저를 가장 먼저 실행해서 0번 프로세스로 만들고 그 이후에 많은 프로그램들을 실행해서 많은 자식 프로세스로 만들어 버리고 웹브라우저를 닫아버리면... 자식 프로세스들이 순식간에 다 좀비 프로세스로 변하므로) 그 이후에 만들어지는 프로세스들이 전부 좀비 프로세스가 될 수 있는 것인데 이 점이 이상합니다.
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 생성과 종료에서 질문있습니다
프로세스 생성과 종료에서 코드와 함께 부모 프로세스에서 자식 프로세스가 복사되는 것을 설명해주십니다. 이때, fork()함수와 unisted.h 등은 윈도우에는 없고 리눅스/유닉스에만 있는 헤더와 함수라는 검색 결과를 얻었습니다 그렇다면 5장의 설명은 리눅스/유닉스 계열의 OS에만 해당하고 윈도우 OS에서는 해당하지 않는 내용인 것인가요? 아니면 윈도우 OS에서도 부모 프로세스를 복사하여 자식 프로세스를 만드는 과정은 동일한데 사용하는 함수만 다른 것인가요??