본문 바로가기

IT/modern_c

운영체체 만들기 - HelloWorld

반응형

C++로 나만의 운영체제 만들기를 따라하며 기록으로 남깁니다.

 

저자는 SkyOS 그리고 YuzaOS 를 자작으로 만드신 분입니다.

특이 사항으로 리눅스 베이스가 아닌 윈도우 베이스로 Visual Studio 에서 커널 컴파일을 해서 기동이 가능하다는 점입니다.

 

그럼 환경셋팅과 HelloWorld 실행 과정입니다.

 

책에서는 VisualStudio 2017을 기준으로 설명되어 있고, 2019도 가능하다고 되어 있는데, Github 에 있는 소스를 다운받아서 컴파일하면 오류가 발생합니다. 버전문제인데 VisualStudio 2022로 설치해서 컴파일 하면 해결됩니다!

 

1. Visual Studio2022 설치

아래 옵션으로 설치 합니다.

 

2. SkyOS 소스 내려받기

pdpdds/SkyOS: SkyOS32 is a 32-bit operating system under development in C ++ in a Visual Studio environment. (github.com)

 

GitHub - pdpdds/SkyOS: SkyOS32 is a 32-bit operating system under development in C ++ in a Visual Studio environment.

SkyOS32 is a 32-bit operating system under development in C ++ in a Visual Studio environment. - pdpdds/SkyOS

github.com

git clone 으로 소스를 내려받은 다음

Chapter 폴더의 01HelloWorld.sln 파일을 열면 프로젝트 파일을 오픈 할수 있습니다.

 

3. 컴파일!

Debug 폴더에 SkyOS32.exe 가 생성됩니다.

 

4. QEmu 설치

직접 제작한 운영체제를 기동하기 위한 VirtualBox 같은 가상화 에뮬레이터 입니다.

Download QEMU - QEMU

 

Download QEMU - QEMU

Since version 3.0.0, QEMU uses a time based version numbering scheme: major incremented by 1 for the first release of the year minor reset to 0 with every major increment, otherwise incremented by 1 for each release from git master micro always 0 for relea

www.qemu.org

윈도우용으로 다운받아 설치합니다.

 

5. 파일이미지 다운받기

저자가 미리 만들어놓은 이미지 파일을 다운받습니다.

01_Hello - Google Drive

 

01_Hello - Google Drive

이 폴더에 파일이 없습니다.이 폴더에 파일을 추가하려면 로그인하세요.

drive.google.com

 

6. WInImage 프로그램을 설치해서 5의 SkyOS.IMA 파일을 열고, 3에서 컴파일한 파일을 복사해서 넣습니다.

 

7. 설치한 QEmu 폴더에 가서 6의 이미지와 bat 파일을 가지고 실행합니다.

기본 QEmu 설치 위치 : C:\Program Files\qemu

bat 파일은 수정해야 정상 실행 됩니다.

마지막줄을 아래와 같이 바꿔줘야 합니다.

qemu-system-x86_64 -L . -m 128 -fda SkyOS.ima  -M pc -boot a

 

그럼 가상 에뮬레이터가 실행되고 Hello World!를 확인!

 

 

이제 또 새로운걸 해볼 생각에 두근두근! 이군요 ㅎ

반응형