묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
섹션12. 입출력장치의 대기상태
안녕하세요 강의 내용 중 확실히 짚고 넘어가고 싶은 게 있어서 여쭤봅니다.프로세스의 대기 상태는 8강에서 나온 DMA 컨트롤러에 의해 프로세스가 입출력 장치로 처리 되는 상태와 같나요? 이를 CPU 입장에서는 해당 프로세스의 '대기' 상태라고 보는 것인가요?
-
해결됨그림으로 쉽게 배우는 운영체제
고정 분할 방식도 연속 할당으로 알고 있는데 애니메이션이 다소 헷갈립니다.
2:40에 보면 프로세스 A의 가상주소가 2MB씩 연속적으로 할되지 않고 불연속적으로 할당되어 있습니다... 제가 뭔가 착각하는 건가용... 여기도, 여기도 연속 할당 방식에 고정 분할과 가변 분할이 있다고 나옵니다... 물론 이 분들이 틀렸을 수 있지만요
-
해결됨그림으로 쉽게 배우는 운영체제
Swapping, Manual Overlay, Dynamic Loading, Dynamic Linking의 개념이 헷갈립니다
메모리 오버레이와 스와핑에 대해 찾아 보다가 제목과 같은 기술들을 알게 됐습니다. 영상에서는 메모리 오버레이=프로그램을 쪼개 RAM과 2차 메모리에 나눠 담기, 스와핑=필요할 때마다 2차 메모리에 있는 프로세스 조각과 RAM에 올라가 있는 조각 바꿔치기로 설명하셨습니다. 근데 더 찾아보니 오버레이도 수동/자동이 있다는 것, 또 스와핑과 비슷해 보이는 Dynamic Loading, Dynamic Linking이라는 것도 발견했습니다. 깔끔하게 정리된 자료가 없어서 정리해 주시면 너무 감사할 것 같습니다.
-
미해결개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
P.301 질문
p.301 에서 그림에 그려져있는 태그 같은 표시는 PCB 를 뜻하는건가요? PCB는 커널영역에 저장된다고 전 시간에 배웠는데, 왜 스택영역에 저장되어 있는거 처럼 되어있는지 궁금합니다
-
해결됨그림으로 쉽게 배우는 운영체제
각 메모리의 최대 요구 CPU 리소스는 어떻게 아나요?
이전 강의에서 "SJF 알고리즘은 각 프로세스의 CPU Burst Time을 예측하기 매우 어렵다."고 하셨는데, 최대 요구 CPU 리소스 예측도 CPU Burst Time 예측과 다른 게 없지 않나 생각하거든요. 그런데 여기선 "예측한 최대 요구 CPU 리소스 이상은 절대 안 쓴다!"라고 단정짓고 진행된 것 같아서 뭐가 다른 건지 궁금합니다. 그리고... 이건 제가 공부를 제대로 안 한 건지 모르겠는데요. 한 프로세스에는 그 프로세스가 쓸 프로세스만큼 맨 처음에 할당받고 Waiting으로 넘어가는 거 아니었나요? 생성 시점에 코드랑 데이터를 보면 이 프로세스에 얼만큼 리소스가 필요한지 알 수 있을 텐데... 그러니까 '최대 요구 자원'이라는 개념 자체가 이해가 안 됩니다.
-
미해결그림으로 쉽게 배우는 운영체제
PCB들이 연결리스트로 저장되는 이유가 뭔가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. === 안녕하세요 감쟈님!!PCB들이 연결리스트로 저장되는 이유가 뭔가요?분명 이점이 있을것 같아서 연결 리스트 인것 같은데 모르겠어유!!
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
내부 단편화와 외부단편화 질문
안녕하세요강의에서는 고정분할에는 내부 단편화,가변분할에는 외부 단편화가 생긴다고하는데1. 고정분할에서 8공간에 9크기 프로세스가 못들어가니 이것도 외부 단편화라고 볼수 있나요?2. 가변분할에서 최악적합에서 낭비되는 메모리가 있으니 이것도 내부 단편화라고 볼수 있나요? 고정분할은 프로세스의 데이터와 코드가 주로 할당이되고가변분할은 프로세스의 스택과 힙이 할당이 되나요?고정에서 내부단편화와 가변에서 최악접합으로 인해 남는 공간에 다른 프로세스가 들어갈수 있나요?(남는 공간보다 작은 프로세스)알아보니 최초, 최적, 최악 접합은 가변뿐만 아니라 고정에도 해당된다는데 강의에는 가변에만 해당된다고하니 어느쪽이 맞는지 모르겠습니다생각해보면 고정분할에도 최초,최적,최악이 적용되지 않을까 싶은데요최악 적합은 왜 일어나는지 궁금합니다.최초로 선택하다가 최악 적합이 되는건지 할당할 공간이 하나밖에 안남아서 어쩔수 없이 최악으로 할당하게 되는건지 궁금합니다.
-
해결됨그림으로 쉽게 배우는 운영체제
IPC 방식 중 매개체가 파일과 메모리일 때 할당되는 용량의 차이
참고 강의: https://youtu.be/eELCTRdSj7o?list=PLXvgR_grOs1DGFOeD792kHlRml0PhCe9l&t=315이 질문의 후속 질문 같은 질문입니다. 아직 가상 메모리를 공부하진 않았지만 프로세스가 바라본 메모리상 주소가 가상 메모리상 주소이기에 실제 주소와 다를 수밖에 없음을 이해했습니다. 근데 이 영상을 보면 가상 메모리라는 게 RAM+2차 메모리로 이루어지는데, 위 참고 강의에서는 파일 기반 IPC는 OS가 필요한 용량을 할당해줄 때 기준이 느슨한데, 메모리 기반 IPC는 OS가 필요한 용량을 할당해줄 때 기준이 엄청 깐깐하다고 설명하십니다. (몇 시간 전 고정 길이 어쩌고 질문했는데, 영상을 다시 보니 핀트가 이게 아니라 용량 할당의 타이트함이더라구요) 통신 매개체만 다를 뿐인데 왜 이런 차이가 생기는 걸까요? (왜 직접 안 물어 보느냐 하시면... 저 강의 앞 부분을 안 듣고 질문하는 거라 혹여 욕먹을까 봐 그렇습니다 죄송해요ㅠㅠㅠㅠㅠㅠㅠ)
-
미해결그림으로 쉽게 배우는 운영체제
고정 분할 방식에 질문입니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 고정 분할 방식과 가변 분할 방식의 단점을 최소화한 버디시스템이 최고의 메모리 분할 방식인지 찾아보다 페이징 기법을 알게되었는데 페이징 기법의 방식이 고정 분할 방식과 유사한점이 많은거 같아 고정 분할 방식은 메모리를 나눈 후 프로세스를 맞춰 넣는 방식페이징은 프로세스를 나눈 후 메모리에 퍼즐처럼 넣는 방식 이렇게 요약이 되었는데강의영상 2:47초쯤에 말씀해주신 프로세스C를 예로들면 고정 분할방식은 메모리를 나누고 프로세스는 나누지 않기때문에 할당이 불가능한데 해당 영상은 프로세스 C가 나눠지면서 할당되는걸 보면 해당 기법은 페이징 기법을 사용한건가요???
-
미해결개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
메모리맵 IO와 고립형 IO 차이 질문
다른 분도 유사한 질문을 남겼지만 해당 답변으로 의문이 해소되지 않아 질문 남기는 점 양해바랍니다.메모리맵 IO 는 메모리와 입출력장치가 같은 주소공간을 사용하기 때문에 메모리의 주소공간이 줄어들고 고립형은 그렇지 않은 것으로 말씀해주셨으나 이해가 잘 되지 않습니다.10비트 운영체제를 사용한다고 가정하면 이 운영체제는 1024개의 주소공간을 다룰 수 있는 것으로 알고 있습니다.이때 고립형 IO라고 하더라도 1024개 중 일부를 입출력장치를 위한 주소공간으로 사용하게 되면 당연히 그만큼 메모리를 위한 주소공간이 줄어들 게 되는 것 아닌가요? 메모리맵 IO와 이 점에서 왜 차이가 있는 것인지 모르겠습니다!
-
미해결그림으로 쉽게 배우는 운영체제
세마포어에 관련해 질문입니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 세마포어를 사용하는 이유로 공유자원을 동시에 여러 프로세스가 사용하려할때 생기는 오류를 방지하는데 세마포어를 wait(1) 이렇게 1개의 프로세스만 공유자원을 사용할수있다 가정한 후 동시에 여러 프로세스가 공유자원을 사용하려할때 어떤 기준으로 먼저 실행할 프로세스를 선택하나요?
-
미해결FreeRTOS 프로그래밍
[ L152RE ] 원샷 소프트타이머 실행 잘 되시나요?
대상 보드: NUCLEO-L152RE코드: 강의 자료 / 10_SOFT_TIMER1 증상: HardFault_Handler 진입프린트문으로는 Auto Reload Timer 1회 출력
-
미해결개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
강의하실 때, 보여주시는 ppt 파일 혹시 어디서 받을 수 있는건가요?
강의하실 때, 보여주시는 ppt 파일 혹시 어디서 받을 수 있는건가요?혹은 다운 가능한가요? 궁금해 질문드립니다.
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
순서 정리해봤는데 이게 맞는건가요?
알려주신 내용에 덧붙여서 챗지피티한테도 물어보고 정리해봤습니다1. 호스트 파일에서 DNS 주소 찾기2. 없으면 OS & 브라우저의 DNS 캐시 확인3. 없으면 로컬 DNS 서버(예: ISP DNS) 요청4. 없으면 상위 DNS 서버 요청 (Root DNS까지 재귀적으로 요청)5. IP 주소 획득 후 라우팅 수행6. IP 주소 획득 후 TCP/IP 연결 (3-Way Handshake)7. 리다이렉트 수행 (필요한 경우)8. 브라우저 캐시 확인 (304 응답 처리)9. 프록시 서버 캐싱 확인 (CDN, 로컬 네트워크 캐시)10. 컨텐츠 다운로드 (HTML, CSS, JS, 이미지 등)11. 브라우저 렌더링 후 사용자에게 웹사이트 표시근데 알려주신 강의에는 브라우저 캐싱과 공유 캐싱이 DNS캐시보다 먼저 수행된다고 하니까 어떤게 맞는건지 모르겠네요
-
미해결FreeRTOS 프로그래밍
Deferred Interrupt Processing 샘플 예제 문의 드립니다.
강의: FreeRTOS의 절대 우선 순위시간: 6:14 void task0(void* pdata) 코드를 보면, 오래 걸리는 memcpy 작업 수행 전 vTaskSuspend(NULL) 을 실행하는 데요. 제가 이해한 게 맞는지 좀 봐주세요.이렇게 수행될 것 같습니다.task0 을 우선 생성/실행한 후, vTaskSuspend(NULL) 호출하여 Blocked 상태로 대기cdma 인터럽트 발생 시, task0 Ready / Running 상태 전환하여 memcpy 수행.task0 Loop 를 통해, 다시 Blocked 상태로 진입이런 순서로 진행되는 건가요?
-
해결됨그림으로 쉽게 배우는 운영체제
IPC 통신 중 파일을 이용한 방법이 정확히 어떤 건가요?
https://dar0m.tistory.com/233IPC에 대해 가장 잘 정리된 것처럼 보이는 걸 가져왔습니다. 질문 전에 이거 말고 몇 개 더 읽긴 했습니다. 강사님께서 "파일과 파이프를 이용하는 방법"이라 하셨으니, '파일을 이용하는 방법'이라 함은 파이프를 이용하는 방법과 네트워크 통신을 빼면 메시지 큐를 이용한 방법이랑 공유 메모리를 활용하는 방식 둘 중 하나 혹은 둘 다를 말하는 걸로 이해했습니다. 근데 위 링크 정리 부분을 읽어 봐도, https://m.blog.naver.com/demonic3540/221669173818 이걸 읽어 봐도 강의에서 설명한 예시가 Pipe 방식인 것 같습니다. 근데 이러면 또 문제가, 이 섹션? 의 후속 강의에서 Race Condition과 Synchronization 방법론이 나오는데... 파이프 방식은 애초에 최대 쌍방향 통신이라 동기화가 필요할 일이 공유 메모리 방식보다 훨 적은 것 같아서... 사실상 공유 메모리 방식 통신을 전제로 하신 게 아닐까 생각했습니다. 암튼 좀 혼란스러워서 정리해 주시면 좋겠습니다.
-
해결됨CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
교재 64페이지 참고글에 옥텟=8바이트
8비트 = 옥텟 = 1바이트 인거죠..?위에선 32비트가 4바이트라 되어있는데8비트 = 옥텟 = 8바이트로 되어있어서요
-
미해결FreeRTOS 프로그래밍
포팅 서비스 부탁드립니다
-------------------------------------------------- 사용하고 싶은 ST 보드명:F407 disco - 사용하시는 컴파일러(stm32cubeide) 버젼: 1.18.0 - 기타: 감사합니다 -----------------------------------------------
-
미해결FreeRTOS 프로그래밍
Task 의 Stack 메모리 영역 설명 부분 질문 드립니다.
대상 강의: '태스크 스택의 크기를 결정하기'재생 위치: 1:50 Q. Task Stack 동적 메모리 할당을 Heap 영역으로, 정적 메모리 할당을 bss 영역으로 설명해주셨는데요. 이게 Build Option (configSUPPORT_DYNAMIC/STATIC) 기준으로 설명해주신 건가요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
파일 시스템 관련 질문 있습니다.
유닉스 파일 시스템에서 단일 간접 블록은 데이터들을 저장한 블록주소 인 것으로 학습하였습니다.여기서 단일 간접블록은 Inode가 아닌, 순수하게 데이터만 저장한 블록이 맞을까요?그림상에서는 블록 주소에 하나의 데이터만 매칭이 되있는 것으로 보였는데,그렇다면 단일 간접 블록은 하나의 블록이 아닌 여러개의 데이터를 포함할 수 있는 블록의 모음체일까요?감사합니다.