진행 상황 보고
- STM32F446RE 칩 온보딩 완료 (Cross Compiling, Debugging tools installation)
- Blinky 예제 성공
- MCU level → PAC(Peripheral Access Crate) level 공부
- PAC를 활용하여 좀 더 Capsule화된 코드를 작성하고자 하는 중.
- STM32F446 전용 PAC crate를 crates.io에서 찾아보고 있음.
- stm32-metapac으로 시도해보고 있으나, 뭔가 오류가 생기는 것 같아 다시 확인중.
미팅 정리
-
Tock OS가 그 논문('Tiered Trust for Useful Embedded Systems Security')의 주인공이었다.
-
#[entry]와 같이 #으로 태그해서 뭔가 하는 기능에 대해 알아봐야 할 것 같다. 조교님께서 작성하신 #[task] 이걸 보니, 처음에 compile을 하는 단계에서 이 태그들을 먼저 확인해두는 용도로 쓰이는 것 같다. (마치 python에서 def들을 먼저 체크하는 것처럼)
#[task]
fn led_task(){
...
}
#[task]
svc ==> system call
현재 내가 작성한 Blinky 예제는 일종의 라이브러리.
최종 목적은 아래 사진 속 구조를 따라해보는 것.

- Core Kernel
- HAL(Hardware Abstract Layer) : 하드웨어상 어느 메모리 영역을 사용할 지, 하는지 알려주며 만약 특정 어플리케이션이 다른 어플리케이션의 메모리 영역에 침범할 경우 이를 알려준다.
- Schedular : 앱들을 어떻게 관리할 것인가? 몇 초에 한 번씩 쓰레드를 바꿔가며 처리할 것인가?
- Config : configuration for those systems
- Kernel capsules
9월 5일까지
- LED 예제같은 일종의 fn(앱)을 하나 더 만들어보기
- main.rs에 들어가면 이 앱을 보는 게 아니라 작은 OS를 바라볼 수 있게.
- 그래서 메모리 주소에 직접 닿지 않고, 내가 원하는 앱을 call해서 간접적으로 처리할 수 있게 해보자.
- svc ⇒ system call 공부.
- Tiered Trust 논문 공부.
- #[task]와 같은 # 기능에 대해 알아보기.