-
자료구조Reference/자료구조 2023. 12. 30. 16:08
여러 자료구조에 대해 정리하고 구현해보려고 한다. 예전 수업시간에 배웠던 공부의 복습 목적도 있지만, 이번 방학 중 목표로 잡았던 것 중 하나인 OS 구현에서 사용하기 위함이 더 크다.
OS에서 사용하는 자료구조는 더블 링크드 리스트(DLL), 큐(Queue), 스택(Stack), RB tree, B-tree 등 다양한 종류의 자료구조를 사용한다. 이 카테고리에서는 자료구조를 간단하게 설명하고, 직접 구현해본 다음 코드를 깃허브에 올려놓겠다.
깃허브 주소는 아래와 같다.
https://github.com/seyoung4503/dataStructure
모든 코드는 C 코드로 작성된다. 이유는 가장 기본에서 시작해서 구현하고 싶다. 또한, 웬만한 자료구조를 전부 구현하고 나서 OS를 구현할 계획인데 이때 Micro C OS 3 코드를 참고할 것이기 때문이다. 하지만 추후에 템플릿 같은 기능이 필요하다면, 코드를 약간 수정해서 cpp 프로젝트로 전환할 수도 있다.
자료구조에 대한 레퍼런스는 뇌를 자극하는 알고리즘이란 책이다. 친한 형이 책을 빌려줬는데, 책이 아주 쉽고 잘 설명되어 있다.
뇌를 자극하는 알고리즘 OS 구현 코드는 Micro C OS 3를 참고하겠지만 빡빡하게 돌아가는 RTOS는 구현하지 않을 생각이다. RTOS는 기회가 된다면 나중에 구현 해보겠다..