[yummyHitOS] 25 day (2017.08.15)
아니 퇴사한지가 딱 2주가 지났네요!! 퇴사하고 바로 글을 쓰려고 했는뎀 ㅜㅜ 이제서야 글을 쓰다닛...
야미의 근황은 11월 2일부터 11월 14일까지 연차소진을 한 후, 을왕리와 제주도 여행을 다녀왔어욤!! 오늘은 써야할 내용도 아주 많고, 근황톸톸도 많으니 최대한 빠르게 근황설명을 해드릴게욥!!
먼저 가천대학교 Pay1oad 보안동아리와 건국대학교 Security FACT 보안동아리의 연합 세미나가 11월 10일(토)에 진행되었어요! 저는 가천대학교 Pay1oad 보안동아리의 멘토자격으로 Speaker 가 되었지욤!
제 발표 주제는 "새내기 혹은 보안 및 컴퓨터에 입문하려면 어떻게 해야할까?" 를 내포한 제목인 "yummyHit 은 누구이며 이 자리에 왜 서있는가" 예요! 제가 처음 컴퓨터에 입문한 것부터 시작해서, 어떻게 해야 진로를 정할 수 있을까?! 이러한 궁금한 점들을 풀어주기 위한 자그마한 토크쇼같은 느낌이랄까욥!!
그리고 퇴사날짜인 11월 14일 다음날 을왕리로 출발했는데, 우와 저는 인천대교가 15km씩이나 되는줄은 몰랐어요 ㅜㅠ엄청 멋있더라구요! 인하대학교 친구가 말하기를 "너네는 대성리가지? 우리는 을왕리간다!" 라고 해서 아.. MT촌이구나.. 싶었어욧ㅎㅎㅎㅎ 제가 간 호텔에서의 오션뷰 찰칵!
아 너무예뻐요 ㅜㅜ DSLR 도 아니고 그냥 아이폰 카메라로 찍은건뎀... 사진만 봐도 마음이 평-안 해지지 않나욧!? 히히
을왕리를 다녀온 후엔 제주도를 갔어요! 참, 저는 어디를 여행가든 잠깐 누구를 만나든 항상 저의 맥☆북과 함께한답니다! 오랫동안 가방을 무겁게 메고다녀서 그런지 별로 무겁지 않아욤 ㅎㅎㅎ
이번엔 제주도의 오션뷰 찰칵!
좋은 친구들과 좋은 여행을 함께해서 너무나도 행복했네욤 ㅎㅎ!! 사실 야미는 풍경충이었던 것임미다!! 음식사진이나 그 외 사진들도 많지만... 제 초상권을 위해 밀어서 잠그기... 슥샥쇽-
그리고 마지막으로!! 지난번 포스팅에서 왜 소개를 안했는지 모르겠지만 제 맥뿍- 이후로 제 최애템!!
짜라쟌~ 크레마예요!! 크레마 엑스퍼트!! 이게 무엇이냐면.. ebook reader 인데 이북리더기라고 하니 다들 북쪽에 계신 그분의 안녕을 묻기에.. 크흠 ㅜㅜ 주변에 아재미가 다들 뿜뿜이시네욧!
이걸루 pdf도 읽을 수 있고 필기도 가능하니!! 공부하기에 안성맞춤 아닌가욧 아이 너무좋아ㅜㅜ 이제 맥뿍을 가끔은 두고다녀욧! 나의 크레마와 함께라면-☆
여기까지가 야미의 근황 톸톸~! 그럼 내용이 길어지니 바로 본론으로 들어가볼까욤!!
<< 오랜만이라 챕터가 어딘지 모르시겠죠!? 오늘 진행되는 챕터는 27장이랍니당~! >>
여러분 파일시스템이 무엇인지 기억나시나욧!? 오늘은 캐시, 버퍼, 램 등의 메모리에 관한 구현의 날인데!! 초장부터 파일시스템 캐시에 대해 나오길래여!!
우와 우리가 파일시스템을 처음 들어갔던 날이 어언 1년 전이네욤!! 17년 12월 11일이라닛 ㅜㅜ 너무도 오래되었서욤... 기억안나시는 분이 계시다면 살포시 23일차 공부하고 오세욧!!ㅎㅎ
Filesystem Cache
책에서 말하는 FileSystem Cache 란, 흔히 일컫는 Disk Cache 를 말하며, 실제로 어원은 Page Cache 예요! 파일시스템이 여러가지 있는건 다들 아시죵!? 작년 파일시스템에서 공부했던 링크에 나온 것은
1. Block-based FileSystem
그 외에도 Stack에 관련된 메모리 파일시스템인
2. Stackable FileSystem
네트워크로 마운트하여 사용되는 nfs 및 메일 서버로 유명한 samba의 smbfs 등이 있는
3. Network FileSystem
시스템과 관련된 sysfs, 프로세스 디렉터리인 proc 및 파이프, usb 등을 관리하는
4. Pseudo FileSystem
일시적으로 사용되거나 디바이스를 담당하는 tmpfs, devfs 등이 있는
5. Special Purpose FileSystem
마지막으로 사용자가 파일시스템을 구성하는
6. FUSE(FileSystem in UserSpace)
이렇게 구성되어 있는 것이 VFS(Virtual FileSystem)를 통해 I/O 와 Page Cache 와 맞물려 BIOs 를 통해 Block Layer로 이어지는 메모리 맵이!! 바로 아래 사진에 짜잔하고 나옵니당!!
Linux Storage Stack Diagram
사진 출처는 말씀 안드려도 대~충 그까이꺼 다 아시겠져!? 너무 아재스러운 개그인가욤 힝..
(출처: https://en.wikipedia.org/wiki/Page_cache)
BIOs욤?! 우리가 흔히 말하는 그 바이오스인가욧!? 야미님 대답해주세요!!
아-아- 마이크테스트- 원투원투! 아닙니다!!
우리가 알고있는 그 hyper-v 설정이라거나 usb booting 이라거나 그것을 담당하는 BIOS는 Basic Input Output System 이구욤!! 방금 여기서 툭튀어나온 BIOs는 Block Input Output -s 라는 블록을 통한 입출력들을 의미해욤! 주소버스같은 개념이죠!
주소버스는 또 무엇이냐구여? 심야버스만 아신다구여? 혹시 토토로의 고양이버스는 아실런지 조심~히 사진투척을...
넘 귀엽지 않나욤 T^T 7월에 일본다녀왔을때 고양이버스 인형 너무 사고싶었는뎀 ㅜㅜ 원피스와 은혼 피규어를 사는바람에 포기하였숨미담...히히
Address Bus, Control Bus, Data Bus 세 종류의 버스가 있어욤! 우리가 흔히 생각하는 버스는 "대중교통" 이잖아욤? 사람을 이동시키죠!?
비슷합니당!! 데이터를 시스템사이에서 이동시키기 위한 의사소통 통로가 버스예욤!! CPU 와 메모리와 I/O 가 서로 알아듣기 위해 버스라는 공간을 통해 데이터를 주고 받는 것이지욤!!
예를 들어 제가 A 라는 키를 누르면 이 Input Data가 버스로 들어가서 Data Bus 에서 Memory 에 A 로 적재시켜주고, 이를 CPU 에서 처리하여 Output Data로 A 를 출력시켜준다고나 할까욧!?
쵸큼 이해가 되시려나욤!?
이걸 전부 얘기하려면... MAR, MBR을 통해 ALU 의 4가지 구성과... 컴퓨터 구조론을 해야함미다 ㅜㅠ 너무도 방대한 컴퓨터세계~
파일시스템 캐시가 어떤것인지는 감이 오시나염!? 메모리를 통한 Page Cache 가 FileSystem 과 함께 연관되어서 사용되어지는 캐시예요!
아까부터 캐시캐시 하는데 내가아는 캐시는 현질하는 Cash 뿐이라구여? 웹에서 방문기록 지우기, 쿠키 지우기와 함께 캐시 지우기에서의 캐시요?! 버퍼와 비슷하다는 캐시요!?
Cache 는 종류가 엄청많아요! 하드웨어에도 있고, 소프트웨어에도 있고, 웹에도 있고.. 헷갈리는 용어인 Cache 와 함께 Register, Buffer 세 가지를 딱 구분해드릴게욥!
Register / Cache / Buffer
Register: CPU의 하드웨어 저장 위치! 논리 연산인 Shift, AND, OR, XOR 등을 이용하고, CPU에 종속적이예요! 왜냐하면 명령어 Set이 CPU 빌딩 블록으로 존재하니깐욤!
Cache: CPU에 아주 조그마한 칩이 달려있어요! CPU가 메모리 제어에 힘겨울 때, 빠른 속도를 통해 처리를 하기 위해 캐시에 들어갈 수 있을만한 크기의 메모리를 찾아 캐시를 통해 빠른 처리를 해주기 위해 존재하는 것이 캐시예요! 레지스터는 CPU 내에서, 캐시는 CPU 바깥에서 존재하며 둘 다 엄청난 속도를 자랑하는 저장소라고 생각하시면 되겠군욤!!
Buffer: 마지막으로 버퍼인데, 버퍼는 큰 범주로 "데이터 임시 저장소" 라고 생각하시면 되어요. 다른 메모리에 저장하기 전에 잠시 버퍼에 저장했다가, 연산 혹은 사용용도가 사라지면 버퍼에서 사라지는 것이죠! 버퍼가 있기 때문에 메모리에 직접적인 접근이 덜 필요하게 되었구요!
물론 레지스터나 Cache 는 저뿐만이 아니예요! 레지스터의 경우 RCD 칩과 RDIMM 칩으로 분류가 되고.. 캐시의 경우 위에서 말했던 디스크 캐시, 웹 캐시, CPU 캐시, DSP 캐시 등 많은 분류로 나뉘어요!
대표적으로 3가지를 나누어 얘기할 때 저렇다~ 라고 용어정리 해드린거에욤!!
아직 한 페이지도 못나간 상태에서 Cache 하나 얘기하려고 주구장창 떠드는 야미에욤.. 더 자세히 들어가면 MMU(Memory Management Unit)부터 시작해서 우리가 공부했던 Page Entry, 그리고 VAX page 를 지나 ARM, RISC, MIPS, SVR, Itanium ... 넴 정말루 할게 많숨니다 ㅜㅜ 아 울면안되어요 할게 많으니 행복하죠! 꺄륵~!
캐시에 대해 이정도만 해도 우리의 교재를 따라갈 수 있을거예요!! 캐시가 어디에 위치하는지, L1 ~ L3 캐시, Least Recently Used 알고리즘 등이 나오는군뇸! 역시 이 책은 아주 대단함니다 ㅜㅜ 요번에 종이책은 판매가 끝나구 ebook 으로 판매중이라고 하던뎀!! 가격은 비슷하더군뇨... 히히 그래도 그만한 값을 함니다 추천추천!!
캐시 다음으로 등장하는 오늘의 두 번째 주제!! 램 디스크!! RAM!! 너무도 많이 들어보고 컴퓨터 살 때마다 "메모리 몇기가~" 라는 그 램!!
RAM
우리가 흔히 말하는 휘발성 메모리이죠! Volatile Memory 인 주기억장치 RAM !! 이에 반하는 Non-volatile Memory 가 보조기억장치들!
RAM(Random Access Memory)에는 SRAM 이라 불리우는 Static RAM 과 DRAM 이라 불리우는 Dynamic RAM 이 있어요!
DRAM은 1개의 capacitor와 1개의 transistor로 이루어져 있어서 각 칩마다 6개의 transistor 를 필요로 하는 SRAM 보다 가격이 저렴해요! 대신 SRAM 은 그만큼 속도가 빠른것이 장점!
네트워크 장비의 경우 NVRAM을 사용하구요! 더 자세한 것은 역시 위키백갓에 물어보는게 좋습니다!!
이러한 RAM 을 이용한 disk 라니 일반적 보조기억장치인 HDD 보다 빠르겠죠?! 하지만 휘발성이니 정보를 담기엔 좋지 않을 것이며 용량도 크지 않으니 특정한 곳에만 사용해야할 것이구요! 그 특정한 곳은 부팅할 때, tmp 와 같이 일시적으로 저장할 때, 캐시와 같이 빠른속도로 처리를 필요로 할 때 swap처럼 Page Cache 를 해야할 때!
오늘의 개념은 이만큼이면 충분한 것 같아요! 이 후는 구현부이니 나중에 포스팅이 완료되면 부가적으로 책의 내용 및 구현부를 올릴 예정이예요!! 오늘도 많은 것을 공부하는 것 같아 뿌-듯 하네욤 ㅎㅎㅎ
그럼 마지막으로 짤 하나를 투척하고 다음번에 찾아뵐게욥!! 당분간 영어공부를 해야할 일이 생겨서.. 공부할 틈이 날지는 잘 모르겠네욤 ㅜㅜ 히히
비밀친구 할레..? ㅋㅋㅋㅋ그럼 다들 연말 잘보내세욧!!! 뾰롱~
Check out the yummyhit’s website for more info on who am i. If you have questions, you can ask them on E-mail.
댓글남기기