inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

독하게 되새기는 C 프로그래밍

안녕하세요. 질문 드립니다.

해결된 질문

352

..

작성한 질문수 2

0

안녕하세요.

강의를 몽땅.. 다 담아서 열심히 수강하고 있는 한 학생입니다.^^

학습한 내용을 제대로 이해했는지 확인 하고 싶어 질문 남깁니다.

 


OS도 결국 명령어와 데이터의 조합으로 이루어진 이진수 binary 파일인 프로그램에 불과하며

disk에 저장되어 부팅 시 부트 로더에 의해 RAM으로 LOAD 되는 것이며,

이 때 커널은 항상 고정 크기를 가지며 파편화가 되지 않습니다.(메모리 가상화를 OS가 해주므로)

즉, 커널은 연속된 메모리 공간에 쌓입니다.

프로세스들은 이 커널 영역을 공유 사용하며, 저장된 가상 메모리 테이블 등에 의해 맵핑 되구 syscall을 할 수 있습니다.

또한 VMWare 등의 프로그램을 통해 가상 머신을 돌릴 때도 커널은 고정 크기를 가집니다.

VM에서 실행할 때, RAM 용량 설정, Thread 갯수 설정 등의 옵션이 있는데

4코어 8GB 환경이라면 VM에 2코어 4GB를 지정해주면

이를 딱 조절해서 HOST와 Virtual OS는 자원을 반 씩 나눠 쓰는 개념이기 때문이고, 가상 OS 상에서의 프로세스들은 Virtual OS에 의해 가상 메모리를 관리 받습니다.


검색과 고민 끝에 이렇게 이해를 했는데 잘 한 것이 맞는지,

잘못된 부분이나 조언해주실 것이 있다면 부탁드리겠습니다.^^

항상 잘 듣고 있습니다.

감사합니다.

 

c kernel secure-coding

답변 1

1

널널한 개발자

커널이 고정크기를 가진다는 것과 파편화 되지 않는다는 의미를 연속된 메모리 공간으로 설명한 부분은 모호한 부분인 것 같습니다. 가상 메모리 시스템은 모두 논리적으로 연속된 메모리 공간으로 제공되기 때문입니다.

그리고 가상머신을 구동할 경우 가상머신 자체가 호스트 OS 상에 존재합니다. 물론 가상 머신에서 구동중인 운영체제는 가상 머신에 할당된 메모리 영역을 물리 영역으로 사용하고 이를 다시 가상 메모리로 추상화 하겠습니다.

1

..

감사합니다 !!!!🙇‍♂️😊

병행성 제어

0

53

2

질문이 있습니다(강의와 거의 상관이 없는)

0

79

2

컴파일러 서적 질문입니다

0

165

1

코드생성 및 최적화 질문입니다

0

168

1

Hex Editor를 이용한 다국어 번역 관련 질문입니다

0

213

2

큐의 배열을 넘겨도 정상작동합니다

0

159

2

캐너리비트에 관하여 질문

0

220

3

상수화된 문자열에 질문있습니다

0

176

1

함수 호출 매개변수 전달에 대한 질문 드립니다.

0

195

1

단항 증감 연산에 따른 다른 접근에 대한 질문있습니다.

0

212

2

함수호출 규약 종류에 따른 장단점 여부

0

235

2

정적라이브러리 링크 오류

0

227

1

const char *를 char*에 초기화할때의 컴파일 에러 처리 방식 문의

0

359

2

pszParam 수정이 왜 Hello World print에도 영향을 미치는지 이해가 잘 안됩니다.

0

261

2

비선형 자료구조

0

314

1

자료 구조 공부 후에

0

357

1

강의자료 관련

0

254

1

마지막에 말씀하신 부분 질문드립니다.

0

216

1

문자열 관련 질문 드립니다

0

293

1

라이브러리

0

276

1

부동소수점

0

397

1

왜 변수 주소 사이에 offset이 있는 건가요?

0

307

2

stack 쌓는 순서

0

515

1

함수호출이랑 쓰레드

0

415

1