2006년 06월 01일
arminios 제작..
요즘 공부용으로 arm용 os를 작성중에 있다.
현재 진행된 내용은 아래와 같다.
- boot code
- timer interrupt
- preemtive soft task switch with round-robin
타겟 보드
- armulator ( soft task switch without interrupt 까지 )
- smdk2440 보드 ( s3c2440 soc with arm920t core )
arm에서는 실행 모드가 여럿있는데 이중 IRQ 모드와 SVC 모드만 사용하였다.
IRQ 모드와 SVC 모드를 위해서 따로 stack을 지정하고, IRQ모드에서 SVC 모드의 태스크 전환을 수행하고
적절하게 복원해야하는게 관건이었다.
특히 x86에서 IRETD나 PUSHD 같은 편리한 인스트럭션이 없어서 무척 난감하기 그지없었다. -_-
이름을 슬슬 정할 때가 온것 같다. 그래서 정한것이 arminios 암이니 OS -_-;;;;?
이상한가..;
이번 공부를 통해서 나도 스크래치 부터 arm 쪽 os를 만들어 볼 수 있다는 자신감(?)을 얻게 되었다.
이제 rtos로 가기 위해서 interrupt nested, priority based로 가야하는데 이 부분은 책을 좀 봐야겠다.
책도 안보고 무턱대고 armnios를 만드니 기본적인 것도 몰라서 좀 헤맨것이 있어서 ㅡㅡ;; ㅋㅋ
# by | 2006/06/01 17:08 | 트랙백



