Graduation Project

<2016>

iOS용 Mobibench 개발 [MobiBench for iOS] (최윤식) [제안서]

  • OS 기반 디바이스 (iPhone, iPAD)의 입출력 성능을 측정하는 앱을 개발한다. 기존에 iOS기반으로 제작된 Mobibench의 기능과 UI를 개선한다. Mobibench는 Database의 입출력과 File IO의 입출력 성능을 측정하는 툴이다. Database의 경우, 저널모드와 트랜젝션의 크기 변경이 가능하며, File IO의 경우 파일 크기, IO 크기, fsync, mmap등 파일 write의 모드별 성능 측정이 가능 하다. 이외에 iOS기반의 입출력 성능 측정을 위한 기능을 Mobibench에 추가하고 UI를 개선하는 것을 최종 목적으로 한다.
  • 주: 맥북과 아이패드 지급. 오픈소스 활동
  • 요건: 자료구조, 운영체제, C (iOS 사전지식 불필요)

mobibench와 AWS [MobiBench] (김선우) [제안서]

  • 안드로이드는 데이터베이스로 SQLite를 내장하고 있어서, 모든 아드로이드 애플리케이션은 간단하게 SQLite 데이터베이스를 생성해 활용할 수 있다. SQlite는 Crash에 대비하여 별도의 저널 파일을 생성한다. 이 때 해당 저널 파일에 대한 일관성 유지를 위하여, 파일 시스템이 중복된 저널링을 시도하는 Journaling of journal anomaly 현상이 발생한다. 이 때문에 순수한 데이터의 양보다 훨씬 많은 양의 IO가 발생하여 성능 저하가 발생한다. 본 프로젝트에서는 이러한 SQLite의 성능을 개선하는 것이 목표이다.
  • 주: 오픈소스 활동
  • 요건: 자료구조, 운영체제, C (안드로이드 사전지식 불필요)

Mobibench에 새로운 database option 추가 [MobiBench] (박성현) [제안서] (김성민,김민석) [제안서] (홍승원,서영호) [제안서] (김선우) [제안서]

  • 안드로이드기기의 입출력 성능을 측정하기 위한 Antutu, RLBench, Mobibench 등 다양한 벤치마크가 있다. Mobibench는 Database의 입출력과 File IO의 입출력 성능을 측정하기 위해 한양대학교에서 개발한 오픈소스 벤치마크이다. 각 벤치마크들을 비교 분석하여 Mobibench의 개선안을 도출하고 기능을 개선하는 것을 최종 목적으로 한다.
  • 주: 오픈소스 활동
  • 요건: 자료구조, 운영체제, C (안드로이드 사전지식 불필요)

F2FS atomic write를 이용한 SQLite 성능 향상 (이중곤) [제안서]

  • 안드로이드는 기본적으로 SQLite라는 데이터베이스를 내장하고 있다. SQLite는 자체적으로 저널링을 하기 때문에 저널링을 하는 파일 시스템인 경우 중복된 저널링을 시도하여 성능저하를 야기한다. 본 프로젝트에서는 F2FS 파일 시스템의 atomic write를 이용하여 SQLite의 성능을 개선하는 것을 최종 목표로 한다.
  • 주: 오픈소스 활동
  • 요건: 리눅스, F2FS, SQLite (리눅스 커널 사전지식 불필요)
  • 성과 : “SQLite with F2FS atomic write”라는 제목의 논문 개제(정보과학회 동계학술발표회 학부생논문)

EXT4 파일 시스템 암호화 (신종현,정구호) [제안서]

  • 커널 4.1 버전부터 EXT4에서 자체적으로 암호화를 지원하기 시작하였다. 본 프로젝트에서는 EXT4의 암호화 알고리즘과 성능부하를 분석파악하고, 암호화 알고리즘을 개선하는 것을 최종 목표로 한다.
  • 주: 오픈소스 활동
  • 요건: 자료구조, 리눅스, 운영체제, C (리눅스 커널 사전지식 불필요)

리눅스 Memory Manager 분석 (정화평,정대희) [제안서] (황윤성,이윤형) [제안서] (이승훈) [제안서]

  • 리눅스 운영체제의 물리메모리 할당정책의 장단점을 분석한다. 본 프로젝트에서는 QEMU 가상머신상에서 리눅스 메모리의 사용 형태 (메모리 할당, 해제, 단편화 등)를 분석하는 것을 최종 목적으로 한다.
  • 주: 오픈소스 활동
  • 요건: 자료구조, 운영체제, C (리눅스 커널 사전지식 불필요)

리눅스 CFQ Scheduler 분석 및 개선 (이솔) [제안서] (최영진,홍영기) [제안서] (이태훈,허유민) [제안서]

  • 리눅스 운영체제의 입출력 성능과 CPU스케쥴링 성능의 상관관계를 분석한다. CPU 스케쥴링에는 우선순위, FIFO, 라운드 로빈, 멀티레벨 큐 등 다양한 스케줄링 방법이 있다. 각 CPU 스케쥴링 시의 입출력 성능을 분석하여, 입출력과 CPU 스케쥴링 간의 상관관계를 분석하는 것을 최종 목적으로 한다.
  • 요건: 자료구조, 운영체제, C (리눅스 커널 사전지식 불필요)

VSSIM : GC (진용석) [제안서]

  • VSSIM은 가상 머신의 저장장치인 SSD의 성능을 측정하여 모니터를 통해 시각화하는 시뮬레이터이다. 초기 개발 환경은 Ubuntu 10.04였으며, 이러한 이유로 SSD 모니터는 현재 구형 라이브러리를 사용하고 있다. 또한, 성능 측정에 있어 약간의 오차가 발생하기 때문에 개선이 필요하다. 본 프로젝트에서는 이를 개선하는 것을 최종 목적으로 한다.
  • 요건: 리눅스, QEMU, C (리눅스 커널 사전지식 불필요)

Pintos (최서규) [제안서]

자유주제 – 학식 추천 (박용호,권다운) [제안서]

  • Collaborative Filtering 알고리즘을 기반으로 이 알고리즘의 단점인 First-Rater 문제와 Cold start에 대한 문제를 해결한다. 그리고 실제 한양대학교 학생들의 식사메뉴 데이터를 수집하여 Android와 iOS 모두에서 사용할 수 있는 식사메뉴 추천 어플리케이션을 제작하는 것을 최종 목적으로 한다.
  • 요건: 자료구조, 안드로이드, iOS