SlideShare a Scribd company logo
1 of 40
Download to read offline
2015년, 리눅스를 뜨겁게 만
들고 있는 5가지 기술
#1. Wayland
Wayland graphics
• Wayland is intended as a simpler replacement for X
• 2008, Kristian Høgsberg(a.k.a KRH)의 “개인” 프로젝트로 시작
“내가, 우리가, 건담이다!” - 세츠나 F 세이에이
Why?
• X의 역사 25년, 이젠 지쳤음
• X를 이용하는 UX 개발자들 또한 지쳤음
• 설계… 설계… 설계…
“인정하고 싶지 않군. 자기자신의 젊음으로 인한 과오라는 것을”
- 샤아 아즈나블
그래서?
• 오픈 소스 친화적이고, 최소한만을 유지
• Kernel-Mode Setting, EVDEV, PIXMAN 등 외부 라이브러리를 최대한 많
이 활용함
• 로컬 기반
• 원격접속 따위는 허락치 않겠다  VNC 형태의 프로토콜
• 컴포지팅 API 만을 제공
• Direct Rendering과 CSD(Client-Side Decoration) 만 제공
뭔 말이냐?
• 기존의 X 서버
• X 서버가 EVDEV를 통해 사용자 입력을 받는다
• EVDEV를 사용하니까 당연히 커널에서 곧바로 받음
• X 서버가 사용자 입력을 클라이언트에게 넘겨준다
• X 클라이언트는 화면을 갱신하고 서버를 호출한다.
• X 서버는 컴포지터에게 화면 갱신에 관련된 내용을
알려준다
• 컴포지터는 X 클라이언트의 갱신된 화면을 최종 화
면에 반영하고, X 서버를 호출함
• X 서버가 KMS를 호출하여 갱신되 최종 화면을 프
레임버퍼에 반영한다.
뭔 말이냐?
• Wayland
• 이렇게 변경했다. 쉽다.
이게 왜 중요한 이슈인가?
• GNOME, QT는 Wayland를 '넌 이미 지원하고 있다‘
• 반면, mir의 경우 ‘GNOME, QT’에서 ‘안 돼 안 바꿔줘, 바꿀 생각 없어,
빨리 돌아가'
“그래도 지키고 싶은 세계가 있어!”
- 키라 야마토
볼 만한 오픈 프로젝트들…(이라고? 정말?)
• EFL
• 삼성 타이젠에서 사용되는 GUI 환경 당근 Wayland 기반입니다. 그리고 삼성에
서 주도하고 있습니다.
• Gstreamer
• 여러분도 알고 계신 그거입니다. Collabora에서 기여하고 있습니다.
#2. File System
Ext2, ext3, ext4는 생략한다.
F2FS(Flash-Friendly File System)
• 삼성에서 개발한 ‘nand’ 기반 리눅스 파일 시스템이다.
• 주요 개선 사항은 “낸드 플래시 스토리지의 내부 구조 접근에 로그 구조
접근법을 사용해 기존 디스크 회전 기반 파일 시스템을 적용하면서 발
생한 단점인 오버해드를 줄이고, 디스크 레이아웃과 배열 선택과 클리닝
알고리즘이 개선” 되었으며 커널 3.8에 추가되었다.
• http://www.phoronix.com/scan.php?page=article&item=linux-3.19-
ssd-fs&num=1
• 참고자료
• https://lwn.net/Articles/518718/
• 논문 : F2FS와 Ext4의 FTL별 성능 비교 및 BAST Padding 기법 제안
F2FS는 왜 만들었을까요?
• 임베디드 시스템에서 사용되는 저장장치는 거의가 ‘flash’ 기반입니다.
• ‘nor’ jffs2
• ‘sd/mmc’  일반 파일 시스템
• Nand는 제한이 많다.
• 페이지 쓰기, 블록 지우기, 내구성
• ‘yaffs’를 많이 쓰고 있지만 포팅의 ‘언덕’을 넘어가야 함
• ‘mtd(block)-ftl(translation)-fs’로 이뤄진 nand 기반의 파일 시스
템을 100% 활용할 수 있다.
“진실은 언제나 하나” – 에도가와 코난
btrfs
• B-tree file syste이라 쓰고, Butter file syste이라 읽는다.
• 3.13 이후 릴리즈 된 커널에 기본으로 포함되어 있다.
• 장점
• 동적 아이노드 할당
• 기록 가능 스냅샷, 스냅샷에 대한 스냅샷
• 미러링 및 스트리핑
• Zlib을 통한 자체 압축
• 파일 검사(on/off line)
• SSD 최적화 모드
서버, SSD, 대용량, 성공적
#3. Systemd
OpenRC에서 Systmed로 가자!!
• Why?
• Bash 종속
• Bash 보안 문제가 곧 시스템 보안 위협으로 적용
• 이렇게 된거! 다시 만들겠어!
• Pluse audio 개발자들이 모여서 판을 새롭게 만들기 시작
• Fedora에 적용, PID 1 탈환!
• Upstart는 이제 기억조차 하지 않겠다!
“다시 모두함께 웃고 싶은데, 네가 죽
으면 의미가 없잖아!” - 사와다 츠나
요시
그렇다고 문제가 없겠느냐?
• 철학적 고뇌 : “내껀 내꺼고 니껀 니꺼지!”
• 1) Systemd는 전통적으로 Unix계열 운영체제의 PID 1이었던 init(System V
Init)을 교체, 2) 초기화 스크립트 관리자, 3) 로그시스템 관리자 4) 하드웨어에
대한 부분, 5) cgroup 관리 및 6) 시스템 전반적인 부분에 관여
• SysV에서 공통적으로 사용되었던 프로세스 데몬을 만들기 위한 setsid() 콜도
필요없고 PID파일을 따로 관리할 필요도 없음
• Systemd가 너무 많은 일을 하고 있다. 이것은 유닉스 철학에 상반된다.
“한 가지만 잘하자”(a.k.a 한 놈만 팬다)
장점/단점은 뭔가?
• 장점
• 속도…
• 초기화를 병렬처리로 진행하기 때문에 엄청 빠르다.
• 믿을 수 없을 만큼
• 단점
• 속도를 뺀 나머지 모든 것
• 호환성
• 당신의 경험
#4. Docker
What is Docker?
• 리눅스 컨테이너 기술을 이용하여 뭔가를 패키징, 배포를 지원하는 오픈
소스 프로젝트로 PyCon 2013에서 소개되었음
• 파이썬 배우자, 두 번 배우자, 계속 배우자
• 구글도 쓰고, 나도 쓰고, 여러분도 쓰고, 너도 쓸 것이다. 왜냐하면
• 유행이니까…
• 묶어서 ‘실행’ 할 수 있다.
• 단순히 묶어서 어쩌고 저쩌고 하지 않는다.
파이썬 배워자, 두 번 배워자!, 계속 배우자!
파이콘 2015 상암동 누리꿈스퀘어, 2015년 6월 27~28일
특징
• 쉽다(고 말하고 싶지 않지만 쉽다.)
• “도커는 문제가 없다. 언제나 문제는 당신이다.”
• VM에 비해서 이미지 크기가 작다
• 내 마음은 512GB, SSD는 소중하니까... 많이 소중해!!
• 가볍다
• 시놀로지 NAS에도 들어간다.
• 공유기에도 들어간다.
• 내 핸드폰에도 들어갈 기세다.
• https://www.stgraber.org/2013/12/23/lxc-1-0-some-more-advanced-
container-usage/
지금까지는 기적 같은게 아니야. 기적은 이제부터다!
- 카자미 하야토
도커(Docker)
확실한건!
“VM과는 다르다. VM과는!!”
리눅스 컨테이너
• 컨테이너
• 컨테이너 안에 가상 공간을 만들어서 실행 파일을 호스트에서 직접 실행
• 리눅스 커널의 cgroups와 namespaces를 사용
• Cgroups는 “컨트롤 그룹“Namespaces
#5. Small, Mobile, Faster
모바일로 이동
• 데스크탑 시장 v.s. 모바일 시장
• 화려한 그래픽 v.s. 콘솔의 역습
• 리눅스 배포판 v.s. 리눅스 커널
• 우린 어디를 보고 달려가고 있는가?
• 상업용으로 사용되는 대부분의 기술은 서버와 모바일에 집중
• 가정용으로 분류되는 기술 중 가장 중요한 것은 하드웨어 지원과 GUI 환경
• 하나된 리눅스 그러나 분리된 세계
모바일? 아니다. 여전히 “리눅스 커널”이 중요
하다.
The END
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술 | 한상곤 Sangon Han | 2015.03

More Related Content

Viewers also liked

2017년도 고려대학교 사이버국방학과 입시설명 자료
2017년도 고려대학교 사이버국방학과 입시설명 자료2017년도 고려대학교 사이버국방학과 입시설명 자료
2017년도 고려대학교 사이버국방학과 입시설명 자료Seungjoo Kim
 
멋진+직장인+되기
멋진+직장인+되기멋진+직장인+되기
멋진+직장인+되기석현 박
 
4년치 컨닝페이퍼
4년치 컨닝페이퍼4년치 컨닝페이퍼
4년치 컨닝페이퍼totodeung
 
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)Sehan Lee
 
UX 디자인에 대하여
UX 디자인에 대하여UX 디자인에 대하여
UX 디자인에 대하여totodeung
 
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이GangSeok Lee
 
무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전James (SeokHun) Hwang
 
더 빠른 웹을 위해: HTTP/2
더 빠른 웹을 위해: HTTP/2더 빠른 웹을 위해: HTTP/2
더 빠른 웹을 위해: HTTP/2EungJun Yi
 
More effective c++ 1
More effective c++ 1More effective c++ 1
More effective c++ 1현찬 양
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정Yoonwhan Lee
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬KTH, 케이티하이텔
 
Mysql old password 깨기
Mysql old password 깨기Mysql old password 깨기
Mysql old password 깨기HyunSeung Kim
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTYoung D
 

Viewers also liked (14)

2017년도 고려대학교 사이버국방학과 입시설명 자료
2017년도 고려대학교 사이버국방학과 입시설명 자료2017년도 고려대학교 사이버국방학과 입시설명 자료
2017년도 고려대학교 사이버국방학과 입시설명 자료
 
멋진+직장인+되기
멋진+직장인+되기멋진+직장인+되기
멋진+직장인+되기
 
4년치 컨닝페이퍼
4년치 컨닝페이퍼4년치 컨닝페이퍼
4년치 컨닝페이퍼
 
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
 
UX 디자인에 대하여
UX 디자인에 대하여UX 디자인에 대하여
UX 디자인에 대하여
 
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
 
무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전
 
더 빠른 웹을 위해: HTTP/2
더 빠른 웹을 위해: HTTP/2더 빠른 웹을 위해: HTTP/2
더 빠른 웹을 위해: HTTP/2
 
More effective c++ 1
More effective c++ 1More effective c++ 1
More effective c++ 1
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
 
Mysql old password 깨기
Mysql old password 깨기Mysql old password 깨기
Mysql old password 깨기
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
 
PHP Profiling
PHP ProfilingPHP Profiling
PHP Profiling
 

More from Ubuntu Korea Community

권총 사격하러 우분투 써밋 참가한 썰.txt
 권총 사격하러 우분투 써밋 참가한 썰.txt  권총 사격하러 우분투 써밋 참가한 썰.txt
권총 사격하러 우분투 써밋 참가한 썰.txt Ubuntu Korea Community
 
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경Ubuntu Korea Community
 
우분투한국커뮤니티 2022년 활동 정리
우분투한국커뮤니티 2022년 활동 정리우분투한국커뮤니티 2022년 활동 정리
우분투한국커뮤니티 2022년 활동 정리Ubuntu Korea Community
 
우분투한국커뮤니티 2022년 신년회
우분투한국커뮤니티 2022년 신년회우분투한국커뮤니티 2022년 신년회
우분투한국커뮤니티 2022년 신년회Ubuntu Korea Community
 
Memory Attack - The Memory Attack Techniques
Memory Attack - The Memory Attack TechniquesMemory Attack - The Memory Attack Techniques
Memory Attack - The Memory Attack TechniquesUbuntu Korea Community
 
Python을 이용한 Linux Desktop Application
Python을 이용한 Linux Desktop ApplicationPython을 이용한 Linux Desktop Application
Python을 이용한 Linux Desktop ApplicationUbuntu Korea Community
 
케라스와 함께하는 재밌는 딥러닝 활용 사례들
케라스와 함께하는 재밌는 딥러닝 활용 사례들케라스와 함께하는 재밌는 딥러닝 활용 사례들
케라스와 함께하는 재밌는 딥러닝 활용 사례들Ubuntu Korea Community
 
딥러닝 세계에 입문하기 위반 분투
딥러닝 세계에 입문하기 위반 분투딥러닝 세계에 입문하기 위반 분투
딥러닝 세계에 입문하기 위반 분투Ubuntu Korea Community
 
9월 서울지역 세미나 GPG 키사이닝 파티
9월 서울지역 세미나 GPG 키사이닝 파티9월 서울지역 세미나 GPG 키사이닝 파티
9월 서울지역 세미나 GPG 키사이닝 파티Ubuntu Korea Community
 
우분투한국커뮤니티 2018년도 상반기 활동 보고
우분투한국커뮤니티 2018년도 상반기 활동 보고우분투한국커뮤니티 2018년도 상반기 활동 보고
우분투한국커뮤니티 2018년도 상반기 활동 보고Ubuntu Korea Community
 
새로운 Libhanjp 라이브러리 구조
새로운 Libhanjp 라이브러리 구조새로운 Libhanjp 라이브러리 구조
새로운 Libhanjp 라이브러리 구조Ubuntu Korea Community
 
스타트업에서 하드웨어 개발 프로세스 도입하기
스타트업에서 하드웨어 개발 프로세스 도입하기스타트업에서 하드웨어 개발 프로세스 도입하기
스타트업에서 하드웨어 개발 프로세스 도입하기Ubuntu Korea Community
 

More from Ubuntu Korea Community (20)

권총 사격하러 우분투 써밋 참가한 썰.txt
 권총 사격하러 우분투 써밋 참가한 썰.txt  권총 사격하러 우분투 써밋 참가한 썰.txt
권총 사격하러 우분투 써밋 참가한 썰.txt
 
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
머신러닝/딥러닝 개발자/연구자에게 필요한 개발/연구 환경
 
우분투한국커뮤니티 2022년 활동 정리
우분투한국커뮤니티 2022년 활동 정리우분투한국커뮤니티 2022년 활동 정리
우분투한국커뮤니티 2022년 활동 정리
 
우분투한국커뮤니티 2022년 신년회
우분투한국커뮤니티 2022년 신년회우분투한국커뮤니티 2022년 신년회
우분투한국커뮤니티 2022년 신년회
 
Ubuntu Korea at FOSSASIA Summit 2022
Ubuntu Korea at FOSSASIA Summit 2022Ubuntu Korea at FOSSASIA Summit 2022
Ubuntu Korea at FOSSASIA Summit 2022
 
Overview of the Flatpak
Overview of the FlatpakOverview of the Flatpak
Overview of the Flatpak
 
Usage of the MQTT
Usage of the MQTTUsage of the MQTT
Usage of the MQTT
 
Open Source and the License
Open Source and the LicenseOpen Source and the License
Open Source and the License
 
Memory Attack - The Memory Attack Techniques
Memory Attack - The Memory Attack TechniquesMemory Attack - The Memory Attack Techniques
Memory Attack - The Memory Attack Techniques
 
Python을 이용한 Linux Desktop Application
Python을 이용한 Linux Desktop ApplicationPython을 이용한 Linux Desktop Application
Python을 이용한 Linux Desktop Application
 
나의 우분투 이야기
나의 우분투 이야기나의 우분투 이야기
나의 우분투 이야기
 
Malware Dataset & Ubuntu
Malware Dataset & UbuntuMalware Dataset & Ubuntu
Malware Dataset & Ubuntu
 
케라스와 함께하는 재밌는 딥러닝 활용 사례들
케라스와 함께하는 재밌는 딥러닝 활용 사례들케라스와 함께하는 재밌는 딥러닝 활용 사례들
케라스와 함께하는 재밌는 딥러닝 활용 사례들
 
딥러닝 세계에 입문하기 위반 분투
딥러닝 세계에 입문하기 위반 분투딥러닝 세계에 입문하기 위반 분투
딥러닝 세계에 입문하기 위반 분투
 
9월 서울지역 세미나 GPG 키사이닝 파티
9월 서울지역 세미나 GPG 키사이닝 파티9월 서울지역 세미나 GPG 키사이닝 파티
9월 서울지역 세미나 GPG 키사이닝 파티
 
우분투한국커뮤니티 2018년도 상반기 활동 보고
우분투한국커뮤니티 2018년도 상반기 활동 보고우분투한국커뮤니티 2018년도 상반기 활동 보고
우분투한국커뮤니티 2018년도 상반기 활동 보고
 
새로운 Libhanjp 라이브러리 구조
새로운 Libhanjp 라이브러리 구조새로운 Libhanjp 라이브러리 구조
새로운 Libhanjp 라이브러리 구조
 
스타트업에서 하드웨어 개발 프로세스 도입하기
스타트업에서 하드웨어 개발 프로세스 도입하기스타트업에서 하드웨어 개발 프로세스 도입하기
스타트업에서 하드웨어 개발 프로세스 도입하기
 
기계들의 소셜 미디어, MQTT
기계들의 소셜 미디어, MQTT기계들의 소셜 미디어, MQTT
기계들의 소셜 미디어, MQTT
 
모바일에 딥러닝 심기
모바일에 딥러닝 심기모바일에 딥러닝 심기
모바일에 딥러닝 심기
 

2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술 | 한상곤 Sangon Han | 2015.03

  • 1. 2015년, 리눅스를 뜨겁게 만 들고 있는 5가지 기술
  • 3. Wayland graphics • Wayland is intended as a simpler replacement for X • 2008, Kristian Høgsberg(a.k.a KRH)의 “개인” 프로젝트로 시작
  • 4. “내가, 우리가, 건담이다!” - 세츠나 F 세이에이
  • 5. Why? • X의 역사 25년, 이젠 지쳤음 • X를 이용하는 UX 개발자들 또한 지쳤음 • 설계… 설계… 설계…
  • 6. “인정하고 싶지 않군. 자기자신의 젊음으로 인한 과오라는 것을” - 샤아 아즈나블
  • 7. 그래서? • 오픈 소스 친화적이고, 최소한만을 유지 • Kernel-Mode Setting, EVDEV, PIXMAN 등 외부 라이브러리를 최대한 많 이 활용함 • 로컬 기반 • 원격접속 따위는 허락치 않겠다  VNC 형태의 프로토콜 • 컴포지팅 API 만을 제공 • Direct Rendering과 CSD(Client-Side Decoration) 만 제공
  • 8. 뭔 말이냐? • 기존의 X 서버 • X 서버가 EVDEV를 통해 사용자 입력을 받는다 • EVDEV를 사용하니까 당연히 커널에서 곧바로 받음 • X 서버가 사용자 입력을 클라이언트에게 넘겨준다 • X 클라이언트는 화면을 갱신하고 서버를 호출한다. • X 서버는 컴포지터에게 화면 갱신에 관련된 내용을 알려준다 • 컴포지터는 X 클라이언트의 갱신된 화면을 최종 화 면에 반영하고, X 서버를 호출함 • X 서버가 KMS를 호출하여 갱신되 최종 화면을 프 레임버퍼에 반영한다.
  • 9.
  • 10. 뭔 말이냐? • Wayland • 이렇게 변경했다. 쉽다.
  • 11. 이게 왜 중요한 이슈인가? • GNOME, QT는 Wayland를 '넌 이미 지원하고 있다‘ • 반면, mir의 경우 ‘GNOME, QT’에서 ‘안 돼 안 바꿔줘, 바꿀 생각 없어, 빨리 돌아가'
  • 12. “그래도 지키고 싶은 세계가 있어!” - 키라 야마토
  • 13. 볼 만한 오픈 프로젝트들…(이라고? 정말?) • EFL • 삼성 타이젠에서 사용되는 GUI 환경 당근 Wayland 기반입니다. 그리고 삼성에 서 주도하고 있습니다. • Gstreamer • 여러분도 알고 계신 그거입니다. Collabora에서 기여하고 있습니다.
  • 15. Ext2, ext3, ext4는 생략한다.
  • 16. F2FS(Flash-Friendly File System) • 삼성에서 개발한 ‘nand’ 기반 리눅스 파일 시스템이다. • 주요 개선 사항은 “낸드 플래시 스토리지의 내부 구조 접근에 로그 구조 접근법을 사용해 기존 디스크 회전 기반 파일 시스템을 적용하면서 발 생한 단점인 오버해드를 줄이고, 디스크 레이아웃과 배열 선택과 클리닝 알고리즘이 개선” 되었으며 커널 3.8에 추가되었다. • http://www.phoronix.com/scan.php?page=article&item=linux-3.19- ssd-fs&num=1 • 참고자료 • https://lwn.net/Articles/518718/ • 논문 : F2FS와 Ext4의 FTL별 성능 비교 및 BAST Padding 기법 제안
  • 17. F2FS는 왜 만들었을까요? • 임베디드 시스템에서 사용되는 저장장치는 거의가 ‘flash’ 기반입니다. • ‘nor’ jffs2 • ‘sd/mmc’  일반 파일 시스템 • Nand는 제한이 많다. • 페이지 쓰기, 블록 지우기, 내구성 • ‘yaffs’를 많이 쓰고 있지만 포팅의 ‘언덕’을 넘어가야 함 • ‘mtd(block)-ftl(translation)-fs’로 이뤄진 nand 기반의 파일 시스 템을 100% 활용할 수 있다.
  • 18. “진실은 언제나 하나” – 에도가와 코난
  • 19. btrfs • B-tree file syste이라 쓰고, Butter file syste이라 읽는다. • 3.13 이후 릴리즈 된 커널에 기본으로 포함되어 있다. • 장점 • 동적 아이노드 할당 • 기록 가능 스냅샷, 스냅샷에 대한 스냅샷 • 미러링 및 스트리핑 • Zlib을 통한 자체 압축 • 파일 검사(on/off line) • SSD 최적화 모드
  • 22. OpenRC에서 Systmed로 가자!! • Why? • Bash 종속 • Bash 보안 문제가 곧 시스템 보안 위협으로 적용 • 이렇게 된거! 다시 만들겠어! • Pluse audio 개발자들이 모여서 판을 새롭게 만들기 시작 • Fedora에 적용, PID 1 탈환! • Upstart는 이제 기억조차 하지 않겠다!
  • 23. “다시 모두함께 웃고 싶은데, 네가 죽 으면 의미가 없잖아!” - 사와다 츠나 요시
  • 24. 그렇다고 문제가 없겠느냐? • 철학적 고뇌 : “내껀 내꺼고 니껀 니꺼지!” • 1) Systemd는 전통적으로 Unix계열 운영체제의 PID 1이었던 init(System V Init)을 교체, 2) 초기화 스크립트 관리자, 3) 로그시스템 관리자 4) 하드웨어에 대한 부분, 5) cgroup 관리 및 6) 시스템 전반적인 부분에 관여 • SysV에서 공통적으로 사용되었던 프로세스 데몬을 만들기 위한 setsid() 콜도 필요없고 PID파일을 따로 관리할 필요도 없음 • Systemd가 너무 많은 일을 하고 있다. 이것은 유닉스 철학에 상반된다. “한 가지만 잘하자”(a.k.a 한 놈만 팬다)
  • 25. 장점/단점은 뭔가? • 장점 • 속도… • 초기화를 병렬처리로 진행하기 때문에 엄청 빠르다. • 믿을 수 없을 만큼 • 단점 • 속도를 뺀 나머지 모든 것 • 호환성 • 당신의 경험
  • 26.
  • 28. What is Docker? • 리눅스 컨테이너 기술을 이용하여 뭔가를 패키징, 배포를 지원하는 오픈 소스 프로젝트로 PyCon 2013에서 소개되었음 • 파이썬 배우자, 두 번 배우자, 계속 배우자 • 구글도 쓰고, 나도 쓰고, 여러분도 쓰고, 너도 쓸 것이다. 왜냐하면 • 유행이니까… • 묶어서 ‘실행’ 할 수 있다. • 단순히 묶어서 어쩌고 저쩌고 하지 않는다.
  • 29. 파이썬 배워자, 두 번 배워자!, 계속 배우자! 파이콘 2015 상암동 누리꿈스퀘어, 2015년 6월 27~28일
  • 30. 특징 • 쉽다(고 말하고 싶지 않지만 쉽다.) • “도커는 문제가 없다. 언제나 문제는 당신이다.” • VM에 비해서 이미지 크기가 작다 • 내 마음은 512GB, SSD는 소중하니까... 많이 소중해!! • 가볍다 • 시놀로지 NAS에도 들어간다. • 공유기에도 들어간다. • 내 핸드폰에도 들어갈 기세다. • https://www.stgraber.org/2013/12/23/lxc-1-0-some-more-advanced- container-usage/
  • 31. 지금까지는 기적 같은게 아니야. 기적은 이제부터다! - 카자미 하야토
  • 34. 리눅스 컨테이너 • 컨테이너 • 컨테이너 안에 가상 공간을 만들어서 실행 파일을 호스트에서 직접 실행 • 리눅스 커널의 cgroups와 namespaces를 사용 • Cgroups는 “컨트롤 그룹“Namespaces
  • 36. 모바일로 이동 • 데스크탑 시장 v.s. 모바일 시장 • 화려한 그래픽 v.s. 콘솔의 역습 • 리눅스 배포판 v.s. 리눅스 커널 • 우린 어디를 보고 달려가고 있는가? • 상업용으로 사용되는 대부분의 기술은 서버와 모바일에 집중 • 가정용으로 분류되는 기술 중 가장 중요한 것은 하드웨어 지원과 GUI 환경 • 하나된 리눅스 그러나 분리된 세계
  • 37.
  • 38. 모바일? 아니다. 여전히 “리눅스 커널”이 중요 하다.