10. 파일 시스템

tar(ustar) 기반 파일 시스템 설계, fs_init/fs_flush 구현, readfile/writefile 시스템 콜 추가, SUM 비트 문제 해결까지 진행

2026년 4월 5일 · ljweel · 조회수 ...

09. 디스크 I/O

virtio 프로토콜과 virtqueue 구조 이해, MMIO 레지스터 접근, virtio-blk 드라이버 초기화, 디스크립터 체인을 통한 I/O 요청 구현까지 진행

2026년 4월 5일 · ljweel · 조회수 ...

08. 시스템 콜

syscall 함수 구현, ecall 트랩 처리와 SYS_PUTCHAR/SYS_GETCHAR/SYS_EXIT 핸들러,간단한 셸 구현까지 진행

2026년 4월 2일 · ljweel · 조회수 ...

07. 애플리케이션과 유저 모드

user.ld 링커 스크립트 작성, objcopy 빌드로 바이너리 임베딩, create_process 수정으로 유저 페이지 매핑, sret으로 U-Mode 전환까지 진행

2026년 4월 2일 · ljweel · 조회수 ...

06. 페이지 테이블

페이징의 개념부터 시작해, Sv32 가상 주소 구조, map_page 구현, 커널 identity mapping, 컨텍스트 스위칭 시 satp 전환까지 진행

2026년 3월 31일 · ljweel · 조회수 ...

05. 메모리 할당과 프로세스

Bump Allocator로 페이지 할당을 구현하고, 프로세스 제어 블록(PCB), switch_context, 스케줄러(yield), 예외 처리기 수정까지 진행

2026년 3월 29일 · ljweel · 조회수 ...

04. Exception과 Trap Handler

예외 발생 시 CPU가 커널로 제어를 넘기는 과정을 살펴보고, kernel_entry와 handle_trap을 구현

2026년 3월 27일 · ljweel · 조회수 ...

03. Hello World, C 표준 라이브러리, 커널 패닉

ecall로 SBI를 호출하여 Hello World를 출력하고, printf와 memset/memcpy/strcpy/strcmp과 커널 패닉 매크로를 직접 구현

2026년 3월 24일 · ljweel · 조회수 ...

02. 부트(Boot)

OpenSBI로 QEMU를 부팅하고, 링커 스크립트로 메모리 배치를 정의한 뒤, 최소한의 커널을 작성하여 실행하는 과정

2026년 3월 22일 · ljweel · 조회수 ...

01. 환경 설정과 RISC-V 기초

OS 개발을 위한 QEMU/OpenSBI 환경 설정, RISC-V의 CPU 모드(U/S/M), 트랩 흐름, 특권 명령, 인라인 어셈블리까지 정리한 글입니다.

2026년 3월 18일 · ljweel · 조회수 ...