Managing xv6 with Docker
LAB 1 : xv6
Install Docker (macOS)
- Install Docker, 본인 OS에 맞춰 설치
https://docs.docker.com/desktop/install/mac-install/
Docker → Resources → ADVANCED
본인 mac 사양에 맞춰 설정
Terminal 실행 후, docker 설치 확인
docker --version
Run xv6 on Docker (macOS)
OS 폴더 생성, 폴더로 이동 후 다운받은 os_xv6.tar (lms 다운로드) 파일을 해당 위치에 저장
Run xv6
- 터미널에 명령어 순서대로 실행
docker load -i os_xv6.tar
docker image
- 명령어 순서대로 실행하여 container가 실행되었는지 확인
docker run -it --name ele3021 os_xv6
root@xxx: /OS# exit
docker ps -a
- Container 종료 커맨드 : [Ctrl] + [D] or exit
Container background 상태로 전환 : [Ctrl] + [P] + [Q] (순서대로 입력)
- 만약 container가 완전히 꺼져 있다면,
docker start ele3021
docker attach ele3021
- container가 background에서 실행 중이라면,
docker attach ele3021
- container가 꺼져있는지, background에서 실행 중인지 확인하려면,
#container가 꺼져있으면 확인 불가
docker ps
#STATUS 확인
docker ps -a
xv6 실행
- xv6-public/로 이동후
make
make fs.img
qemu-system-i386 -nographic -serial mon:stdio -hdb fs.img xv6.img -smp 1 -m 512
xv6 종료 : [Ctrl] + [A], [X] (순서대로 입력)
→ shell script bootxv6.sh 만들었으면 이걸로 실행 가능
./bootxv6.sh