전체 글 18

[NVMe Spec] 7.2 Command Submission and Completion Mechanism

7.2 에서는 command 와 completion을 이슈하는 동작을 설명한다. 또한 host software에 의해 command가 어떻게 만들어지는지, completion이 어떻게 처리되는지 설명한다. 7.2.1 Command Processing 7.2.1 에서는 command가 submission되는 과정과 completion 처리과정을 보여준다. Figure 436 은 각 과정을 그림으로 나타내었다. 1. Host는 메모리에 위치한 submission queue에서 next free slot에 하나 이상의 command를 쌓는다. 2. Host는 Submssion Queue Tail Doorbell register를 업데이트한다. 이 때 값은 새로운 Submssion Queue Tail entry..

Study/NVMe 2022.09.03

IO scheduler

I/O Scheduler는 Block Layer에 해당하며, file system으로부터 bio structure에 대한 request submit을 받아 Block I/O에 대한 동작 요청을 I/O Request queue로 효율적으로 전달하는 역할을 한다. 여기서 효율적으로 라는 말에 집중을 해보자. 왜 효율적으로 해야할까? 갑자기 효율적이라는 말이 왜 나온 것일까? 그러기 위해서는 우선 Block I/O에 대해서 알아보아야 한다. Block device는 개별 byte 단위가 아닌 일정 크기 (block) 단위로 접근하는 장치를 말한다. 그 예로 하드디스크와 같은 대용량 저장 장치를 들 수 있다. 전통적으로 이런 Block device는 Character device와는 다르게 파일 시스템이라고 하..

Linux 2022.08.29

[영어공부] Shadow speaking

한달 전 여느때와 다름없이 누워서 인스타를 하며 시간을 축내다가 광고 하나를 보았다. 프렌즈를 보며 쉐도우 스피킹을 하세요! 마침 내가 가장 좋아하는 미드 중 하나가 프렌즈이기 때문에 이 광고가 나에게 더 매력적으로 다가왔던 것 같다. 결심 후 결제하는데는 그렇게 시간이 오래걸리지 않았다. 왜냐면 단돈 28000원에 거진 한달동안 수강할 수 있었기 때문이다. https://grow.co.kr/webPc/myclass/index.do https://grow.co.kr/webPc/myclass/index.do grow.co.kr 8월에도 어김없이 결제한 shadow speaking 스터디 컨텐츠 결제하면 그로우측에서 프렌즈 중 한 에피소드의 스크립트와 주요 문법들을 설명해주는 10분 이내의 강의를 제공해준다..

Study/English 2022.08.23

[Book] The Growth Mindset

요즘 읽고 있는 책을 소개하고자 한다. 책 이름은 마인드셋이다. 이 책은 성장마인드셋에 관해 서술하고 있으며 성장마인드셋을 가지는 것의 장점, 어떻게 성장 마인드셋을 가질 수 있는지 얘기하고있다. 그럼 대체 성장 마인드 셋이 뭘까? 우선 성장 마인드셋에 반대되는 고정마인드 셋에 대해 알아보자. 고정마인드셋 개인의 재능과 능력은 불변하며 고정되어있다는 주의이다. 능력이 고정되어 있기 때문에 노력으로 얻는 결과에는 한계가 있다고 믿는다. 성장마인드셋 누구나 무한한 잠재능력을 가지고 있으며 자신의 재능을 성장시킬 수 있다고 믿는다. 능력은 누구나 성장시킬 수 있으며 얼마든지 길러낼 수 있다고 본다. 태초부터 사람들은 저마다 각기 다르게 생각하고 행동했으며, 서로가 가진 능력이나 개성도 달랐다. 이 때 누군가가..

Book 2022.07.25

맥북 마우스 스크롤 방향 설정

맥북에 원래 쓰던 마우스를 연결해서 쓰려니까 스크롤 방향이 반대여서 너무 불편했다. 그래서 검색하다보니 "Scroll Reverser"라는 프로그램이 있는 것을 알았다~ 설치는 아래 링크로 들어가서 설치하면 된다. https://pilotmoon.com/scrollreverser/ Scroll Reverser Per-device scrolling preferences for MacOS. pilotmoon.com 설치하면 작업표시줄에 위아래 화살표 모양의 아이콘이 생기는데 우클릭으로 클릭하면 활성화/비활성화를 자동으로 선택할 수 있다. 활성화 하기전 세팅을 위해 왼쪽클릭 후 환경설정으로 들어가면 아래와 같은 창이 뜬다. 나는 아래와 같이 설정했다! 설정해주고 활성화하면 세팅 끝~~!

MacBook 2022.06.21

Tmux 입문하기

바쁘신분은 아래만 읽으세요! 단축키 요약 Session 새 세션 생성 $tmux new -s 세션 이름 수정 ctrl + b, $ 세션 종료 $exit 세션 detach ctrl + b, d 세션 목록 보기 $tmux ls 세션 attach $tmux attach -t Window 새 윈도우 생성 ctrl + b, c 새션 생성시 윈도우랑 같이 생성 $tmux new -s -n 윈도우 이름 수정 ctrl + b, , 윈도우 종료 (진짜 종료할거냐고 물어봄) ctrl + b, & 윈도우 종료 (안물어보고 종료) ctrl + d 윈도우 이동 ctrl + b, 0-9 : window number n : next window p : prev window l : last window w : window selec..

Linux 2022.06.21

TDD란?

1. TDD? Test Driven Development! TDD는 Test Driven Development의 약자이다. 소프트웨어 개발 프로세스 중 하나로, 개발 방법 중의 하나로 테스트가 개발을 이끌어가게 하는 방법을 서술하고 있다. 2. 누가 제안? Kent Beck (https://ko.wikipedia.org/wiki/켄트_벡) 이 제안했다. 이 분은 소프트웨어 엔지니어로 다양한 프로그래밍 방법론과 테스팅 도구를 개발한 사람이다. Kent Beck에 대해서는 후에 다른 글에서 더 자세히 다루고자 한다. 3. TDD 하는 방법 매우 짧은 개발 사이클을 반복하도록 한다. 이 때 다음과 같은 세단계의 사이클을 따르도록 한다. 빨간막대 단계에서는 실패하는 테스트 코드를 먼저 작성한다. 실패하는 것이 ..

Study/TDD 2022.06.09

MAC pro 지지직 소리

Mac 산지 어언 두달째,,, Apple TV로 해리포터 전 편을 결제한 뒤 두근두근 하는 마음으로 틀었는데 이게 무슨일!?! 맥북에서 지지직 거리는 소리가 들리는게 아닌가... 그런데 또 youtube는 괜찮고,,, 여기저기 찾아보다가 혹시나 싶어서 오디오 MIDI 설정을 들어가보니 MacBook Pro 스피커에 대한 설정을 할 수 있었다. 혹시나 싶어서 포맷을 48,000Hz로 변경하니 소리가 아주 잘 나온다. 애플케어 가입 안했었는데 땅을 치고 후회할뻔 ㅠㅠ.... 이제 다시 해리포터 보러 가야지~

MacBook 2022.01.13