월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨그림으로 쉽게 배우는 운영체제
2차 기회 페이지 교체 알고리즘
안녕하세요 유익한 영상 매우 잘 보고 있습니다. 헌데 궁금한 점이 있습니다 Q : 2차기회 페이지 교체 알고리즘에서 페이지 부재 없이 페이지 접근에 성공해서 페이지 1번이 제일 뒤로 간 경우에 단 한번만 기회를 받아 기회를 총 두번 쓴 페이지는 똑같이 페이지 부재 없이 페이지 접근에 성공하더라도 스왑영역으로 빠지게 되는건가요 아니면 페이지 부재 없이 계속 접근에 성공하면 계속 뒤로 빠지게 되는건가요
- 미해결그림으로 쉽게 배우는 운영체제
프로세스 간 통신 중 Thread 통신
안녕하세요 강의 매번 잘 듣고 있습니다.(요샌 좀 안 들었지만;;)섹션 3의 강의 중 프로세스 간 통신에서 Thread 통신에 대해 질문이 있습니다.프로세스 간 통신 종류를 설명해주시면서 그 중 하나로 Thread를 이용한 통신을 얘기해주셨는데이것은 하나의 프로세스 안에 속해있는 여러 Thread 간의 통신에 대한 말씀이지프로세스 간 통신이 아니지 않나라는 궁금증이 생니다.예를들어 A프로세스의 Thread와 B프로세스의 Thread 사이의 통신이면 이해가 가겠는데강의 속 그림도 그렇고 하나의 프로세스 안의 Thread간 DATA, HEAP 영역을 이용 하는 것이라프로세스 간 통신에 대한 예시인지 알려주시면 감사드리겠습니다.
- 미해결그림으로 쉽게 배우는 운영체제
운영체제 교재
고생하십니다.운영체제에 해박한 지식을 갖고 있다는 걸 느껴서 그런데감자님께서 운영체제를 공부하실 때 어떤 책을 가지고 공부하셨고 시중에 나온 교재들 중에 추천해 주실 만한 교재가 있는지 알고 싶습니다!
- 해결됨그림으로 쉽게 배우는 운영체제
오버헤드 질문
운영체제의 역사 강의에서 오퍼레이터의 오버헤드 너무 컸다고 하셨는데여기서 오버헤드가 뭔 의미인가요?
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 동기화 - 뮤텍스, 세마포
안녕하세요.프로세스 동기화에서 뮤텍스, 세마포 부분 공부 중 궁금한 게 생겨 질문 올리게 되었습니다. 두 프로세스가 임계 구역 코드를 실행하려고 하는데 이를 동기화 하기 위해 뮤텍스 도구를 사용한다고 하였을 시, 뮤텍스는 전역 변수를 하나 두고 해당 전역 변수의 값이 false면 실행하고 true면 반복문으로 계속 해당 전역 변수의 값을 확인하다가 false로 바뀌면 실행하는 것인데 만약에 두 프로세스가 동시에 전역 변수를 가져와서 CPU 레지스터에 세팅한다고 하면 의미가 없는 거 아닌가요?확률적으로는 매우 희박하겠지만 이런 확률은 고려하지 않는 것인지 궁금하네요.동일 프로세스 내에서 스레드 간에 발생하는 거라면 Java의 Synchronized 키워드를 붙인다고 하면 이해가 가겠는데 다른 프로세스 간에 발생하는 거라면 기본적으로는 자원을 공유하지 않으니까 공유 메모리에 있는 변수를 이용할 것 같은데이런 경우에도 Java의 Synchronized 키워드 같은 게 있는 걸까요?
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 상태에 관하여
안녕하세요.강의 학습 + 커뮤니티 질문 읽어보다가 궁금한 내용이 있어 올리게 되었습니다.보조기억장치 (ex. HDD) 에 저장된 프로그램이 메모리에 적재되어 커널 영역에 PCB가 생성되면서 프로세스가 되고 커널 스레드가 1개 이상 생성되는 걸로 알게 되었는데요.Java의 JVM이나 Nginx 등 Linux 에서 "ps -ef" 커맨드로 찍어보니 커널 스레드가 여러 개 생성되어 있는 경우에 궁금한 게 하나 있습니다.해당 강의 질문 중에 멀티 스레드 모델에 관한 감자님의 답변을 읽어보니 User-Level Thread, Kernel-Level Thread, Multi-Level Thread (Combined) 있다고 답변하셨는데User-Level Thread는 커널 스레드 1개와 다수의 유저 스레드가 연결되어 사용되어 한 개의 스레드가 입출력 I/O로 Block 되면 다른 유저 스레드도 Block이 되어 프로세스 상태가 대기 상태로 바뀌고 해당 프로세스 PCB가 대기 큐로 이동하는 걸로 이해했습니다.User-Level Thread를 제외한 Kernel-Level, Multi-Level Thread에서는 커널 스레드 1개가 입출력 I/O로 Block 되어도 다른 커널 스레드로 사용자 스레드가 연결되어 모든 스레드가 Block 되지 않는다. --> 여기에서 그럼 입출력 I/O로 특정 커널 스레드가 Block 되면 입출력 대기 큐에 해당 프로세스 PCB가 있고 Block 되지 않은 커널 스레드도 있으니 실행을 마치면 준비 큐에도 해당 프로세스가 PCB가 중복으로 있다고 이해해야 할까요?질문을 조금 어렵게 해서 죄송합니다...
- 해결됨그림으로 쉽게 배우는 운영체제
교재는 어디서 다운 받을 수 있나요?
교재는 어디서 다운 받을 수 있나요?
- 해결됨그림으로 쉽게 배우는 운영체제
프로그램과 프로세스 강의 3분47초
안녕하세요. 프로그램과 프로세스 강의 3분47초에서 강사님이 "운영체제의 전략에 따라서 우리의 프로세스가 실행될 텐데 이를 CPU 관점에서 살펴보겠습니다"하시면서 설명을하시는데요. 이 부분이 잘 이해가 가지 않습니다.CPU가 메모리에 올라와있는 프로세스 내의 코드를 실행 및 연산처리하는 과정을 설명하신 것인가요?그리고 이 부분에 대해 더 자세히 알고 싶은데 어떤 검색어로 구글링해야 이 과정에 대한 설명을 더 자세히 알 수 있을까요?
- 해결됨그림으로 쉽게 배우는 운영체제
컴파일 과정
컴파일 과정에서 생기는 .i .s .o 의 파일을 직접 열어보고 싶은데 어떻게 볼 수 있을까요.?
- 해결됨그림으로 쉽게 배우는 운영체제
페이징&가상메모리 관련 질문 드립니다.
안녕하세요. 가상메모리 부분 강의를 들으면서 궁금한 점이 생겨서 질문글 올립니다.1.페이징 기법에서 가상메모리를 일정한 크기로 나눈 블럭이 페이지, 물리메모리를 일정한 크기로 나눈 블럭이 프레임이라고 하셨는데, 페이지와 프레임의 크기는 같나요?1-1. 만약 같다면 그 크기는 영구적인가요?1-2. 만약 다르다면 페이지 크기는 프레임 크기보다 같거나 작아야 할텐데 그건 어떻게 제어/관리하나요? 2. 추가 공부를 하다가 가상메모리와 가상 주소 공간은 다르다는 것을 알게 되었습니다. 프로세스 실행 시 각 프로세스는 가상 주소 공간을 가지며 0번지부터 시작한다고 하는데, 이 각각의 가상주소공간이 가상 메모리에 올라가는 건가요?2-1. 만약 그렇다면 가상메모리를 하나라고 생각해야 하나요, 아니면 여러개(프로세스 수만큼)라고 생각해야 하나요? 가상메모리라는 개념 자체가 추상적이어서 헷갈립니다. 2-2. 만약 여러개라면 페이지는 가상메모리를 일정한 크기로 나눈 것인데, 각각의 가상메모리를 모두 일정한 크기로 나누는 건가요? 아니면 각 프로세스마다 페이지의 크기도 다른가요? 가상메모리가 말 그대로 가상의 것이라 실체가 없어서 그런지 개념이 너무 헷갈립니다ㅠㅠ 답변 기다리겠습니다. 감사합니다.
- 해결됨그림으로 쉽게 배우는 운영체제
페이징(배치정책) CPU에 논리주소를 물리주소로 전달해 줄때 계산 단위
안녕하세요.CPU에서 논리주소 0x1000번을 요청을 했을때 메모리 관리자를 통해 물리주소로 반환된 값이2000이라고 가정을했을때0x2000번을 말하는건가요 아니면 10진수 2000을 말하는 건가요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 해결됨그림으로 쉽게 배우는 운영체제
운영체제의 역사 영상에서
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 6:05부터 6:25 사이의 시간에 내용이 갑자기 뛰어넘겨지네요
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 동작 및 스케줄링 알고리즘 관련 질문 드립니다.
안녕하세요. 프로세스 및 스케줄링 알고리즘 강의를 들으면서 궁금한 점이 생겨 질문 드립니다.1. 프로세스 동작 관련 질문제가 프로세스 관련해서 공부를 하다가 추가적으로 Process Table이라는 개념을 알게 되었습니다. Process Table은 PCB 값을 빨리 찾을 수 있도록 PCB 참조 포인터를 가지며, 프로세스가 종료되어도 zombie process 형태로 Process Table에 남아 있다고 배웠습니다.이 개념과 결합하여 몇 가지 질문 드립니다.1-1. 강의에서 프로세스 종료 시 운영체제가 해당 프로세스의 PCB를 연결 리스트에서 제거한다고 하셨는데, 이때 PCB 자체가 사라지는 건가요? 아니면 PCB는 커널 어딘가에 저장되어 있고 연결 리스트에서만 제거 되는 건가요?1-2. 만약 PCB 자체가 사라지는 거라면 Process Table에 저장된 PCB 포인터도 사라지는 건가요? 그럼 Zombie Process는 어떻게, 왜 남아있는 건가요? 2. 스케줄링 알고리즘 관련 질문스케줄링 알고리즘 강의에서 큐에 프로세스의 정보가 담긴 PCB를 넣는다고 하셨습니다.2-1. 여기서 PCB가 실제 PCB를 말하는 건지 PCB의 주소를 참조하는 참조값인지 궁금합니다.2-2. 만약 참조값이라면 Queue에서 PCB를 직접 참조하는 건지, 아니면 Process Table을 거쳐서 PCB를 찾는 간접 참조인지 궁금합니다. 3. 프로세스 생성 및 스케줄링 동작 정리위 질문 사항을 제외하고 제가 이해한 게 맞는지 확인해주시면 감사하겠습니다.메모리 공간은 경계 레지스터에 의해 운영체제 영역과 사용자 영역으로 나뉘며, 프로그램 실행 시 사용자 영역에 Process 1이 적재되면 운영체제 커널에는 PCB1이 생성됩니다. 스케줄링 알고리즘 역시 운영체제 커널에 저장되어 있으며 스케줄링 알고리즘 내부에서 준비큐가 동작하여 PCB1을 통해 Process 1의 상태 정보를 불러와 CPU를 할당하고 실행합니다. 이후 스케줄링 알고리즘에 따라 다음 PCB2를 통해 Process2를 실행하며 이 과정을 모든 Process가 종료될 때까지 반복합니다. 공부를 하면 할수록 개념이 꼬이는 것 같아서 질문 드립니다. 복잡한 질문이지만 답변해주시면 정말 감사하겠습니다.
- 해결됨그림으로 쉽게 배우는 운영체제
인터럽트 발생 시점과 비동기 방식
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 인터럽트 발생 시점강의에서 인터럽트 방식은 CPU가 입출력 명령을 내리고 다른 작업을 계속한다고 하셨습니다.출력인 경우 cpu가 입출력 관리자에 출력을 요청하고 다른 작업을 하다가 출력이 완료되면 입출력 관리자가 인터럽트를 발생시키는 건가요?입력인 경우는 cpu가 입출력 관리자에 입력을 요청할 필요가 있나요?? 키보드 등으로 입력이 들어오면 메모리 매니저를 통해서 cpu에 입력이 왔다고 인터럽트를 발생시키는 건가요? 비동기 방식cpu가 입출력 관리자에 입출력을 요청하고 다른 작업을 한다고 하셨는데 입출력을 요청한 작업외 다른 작업을 하는 건가요?인터럽트가 발생하면 cpu가 연산을 일시정지한다고 알고 있는데 입출력을 요청한 작업과 다른 작업 모두 정지되는 건가요 아니면 다른 작업은 계속 진행하나요??왜 연산을 정지해야 하나요? 이해가 많이 부족하여 질문이 중구난방이라 죄송합니다ㅠㅠ감사합니다
- 해결됨그림으로 쉽게 배우는 운영체제
PCB 상태 실행에서 대기 상태에서 준비 상태로 변경시
안녕하세요.질문사항 이 3개있어서 답변을 받을수 있을까 하고 적어 봅니다.대기 상태에서 입력이 완료가 되었다는 것을 어디서 계속 체크하는 지 알수있을까요?혹시 키보드나 하드웨어 쪽에서 하는건가요?PCB가 A(Wait), B(Running)인 상태면 스캐줄러는 준비 > 실행 > 준비 > 실행 이렇게 동작을 하나요?아니면 준비 > 실행 > 대기(IO 작업이 완료 되었는지 검사)이렇게 진행이 되나요.(1번과 비슷한 질문)대기 중인 상태에서 입력이 완료가 되었을 때 CPU에게 인터럽트 항목을 호출한다고 알고있는데 이것이 맞는 항목인가요?긴 글 읽어 주셔서 감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 해결됨그림으로 쉽게 배우는 운영체제
프로세스 동기화 질문 드립니다.
안녕하세요! 프로세스 동기화에서 세마포어, 뮤텍스, 모니터 개념을 찾아보면 "프로세스 간에..", "스레드 간에..", "프로세스 또는 스레드 간에.." 글마다 설명이 다르던데 기준이 프로세스가 될 수도 있고, 스레드가 될 수도 있는건가요? 프로세스와 스레드 용어가 섞이다보니 헷갈려서 질문 드립니다!
- 해결됨그림으로 쉽게 배우는 운영체제
부모 프로세스는 프로그램을 실행하지 않아도 생기는 건가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.인터넷 검색해도 정확히 써져있지 않거나, 좀 애매모호하거나 제가 이해한 것이 맞는 지 궁금해서 여쭤봅니다.1) 부모프로세스는 부팅후에 운영체제에서 바로 만드는 프로세스인가요?2) 아니면 첫 프로그램을 실행했을 때, 프로세스가 되면서 그 프로세스가 부모 프로세스가 되는 건가요?!3) 둘 다 아니면, 부모 프로세스는 fork()함수가 불러지면서 만들어지는걸까요?? 1번 경우에는 그럼, 자식프로세스보다 먼저 죽는 경우는 왜 생기는 건가요??!
- 해결됨그림으로 쉽게 배우는 운영체제
페이지드 세그멘테이션 기법에서 메모리 주소 변환 할때요
왜 123000번지가 1번 세그먼트인가요? 그냥 예시 인걸까요?
- 해결됨그림으로 쉽게 배우는 운영체제
오버헤드란?
process 끼리 통신을 하면 오버헤드가 크다고 하는데 오버헤드가 어떤 의미인가요?
- 해결됨그림으로 쉽게 배우는 운영체제
논리주소와 BoundAddress의 비교에 대한 질문
메모리의 주소 수업을 하실 때, 논리주소(상대주소)는 항상 자신의 위치를 0x0번지라고 여긴다라고 하셨는데세그멘테이션 수업에서해당 CPU가 메모리관리자에게 전달해준 논리주소가 0x632라 하셨고,메모리 관리자가 이 값을 Bound Address와 비교하여, 메모리 침범 여부를 확인한다는 사실로부터0x0 을 시작으로 0x632에 걸쳐 인접하여있고, 총 크기가 632라고 이해하면 타당한가요??