시스템 프로그래밍 박진희 컴퓨터 시스템 연구실
2 Project
3 Key-value store 유일한 Key 에 하나의 Value 를 가지고 있는 방식 - Key 와 Value 를 쌍으로 관리 - Hash table, B-Tree, B+ Tree 등 분산형 데이터베이스에서 많이 쓰이는 데이터 모델링 방식 - NoSQL, Apache Casandra 등 KeyValue KeyValue
4 Key-value store Hash Table 해시 값을 주소값으로 사용하는 탐색 알고리즘 충돌이 일어날 수 있으므로 충돌 해결방법이 필요함 - 체이닝, 더블 해시 테이블 등등 Hash function Key, Value Redvelvet Seventeen Twice BTS Monsta-x KeyValue Seventeen Redvelvet Key%hash
5 Key-value store Tree 나무를 닮은 자료구조 Key-value store 의 경우 key 값의 크기에 따라 좌 - 우를 정함 B-Tree, B+ Tree, Red Black Tree, 이진트리 등이 있음 루트루트 자식자식
6 Bonus CPUMEM HDD Malloc() Memory 의 정보를 File 형태로 저장
7 Library 만들기 예제 간단한 라이브러리 만들기 C 파일 헤더 파일 <-main
8 Library 만들기 예제 컴파일
9 Library 만들기 예제 1. 라이브러리용 C 파일과 헤더파일을 object 파일로 변환시킨다 2. as r lib*.a *.o 명령어를 이용 라이브러리에 파일을 추가시킨다 3. As t lib*.a 명령어로 라이브러리안에 포함된 것을 볼 수 있다 4. 컴파일시 gcc – 옵션 * * -L. –l* 라고 실행한다 1. -L 은 라이브러리 경로 2. -l 은 라이브러리 이름 lib 과.a 를 뺀채 쓴다 (ex. libmy.a) 5. 끝