-
[SW 정글 91일차] Disk Scheduling과 RAID기타/SW 사관학교 정글 2021. 11. 2. 00:23
오늘은 백신을 맞아서 조금 일찍 퇴근하려고 한다.
그래서 오늘 배운 내용을 다시 글로 정리하기에는 시간이 부족하여 종이에 정리한 것을 올리려고 한다.
Disk Scheduling과 RAID 공부를 마지막으로 하고 다시 process와 thread에 대해 복습을 진행했다.
이제 내일이면 Pintos가 마무리되고 나만의 무기에 들어갈텐데 조금 아쉬움이 남는 5.5주인 것같다.
1. Disk Scheduling 정리내용
2. RAID
RAID는 Redundant Array of Inexpensive Disks의 줄임말로 여러 개의 물리 disk를 하나의 논리 disk로 사용하여 값비싼 하나의 물리 disk만큼의 효율을 내기위한 아키텍쳐이다.
이러한 아키텍쳐를 사용하므로서 disk system의 성능이 향상되는데 크게 접근 속도가 증가(병렬 처리)와 신뢰성 향상(복제 및 parity를 활용)이 있다.
그러면 지금부터 많은 RAID 구조 중에 몇 가지만 알아보자.
1) RAID 0
RAID 0는 disk striping을 사용하여 만든 구조로 disk striping은 논리적인 한 block을 일정한 크기로 나누어 각 disk에 나누어 저정하는 것이다.
장점으로는 모든 disk에 입출력 부하를 균등 분배하여 병렬 접근이 가능하여 성능이 향상될 수 있다.
단점으로는 한 disk에서 장애가 발생 시에 데이터 손실이 발생할 수 있어 신뢰성이 낮다.
2) RAID 1
위에서 알아 본 RAID 0은 disk access에 초점을 맞추어 성능 향상을 했다면 RAID 1는 data의 안정성에 초점을 맞추어 설계된 구조이다.
RAID 1은 disk mirroring을 사용하는데 disk mirroring은 동일한 데이터를 mirroring disk에 중복 저장하는 것이다.
최소 2개의 disk로 구성하여 입출력은 둘 중 어느 disk에서도 가능한 구조이다.
장점은 한 disk에 장애가 발생하여도 데이터 손실이 발생하지 않아 신뢰성이 높다는 것이다.
단점으로는 똑같은 내용이 담긴 disk개 2개 이상이 존재하므로 가용 disk 용량이 그 만큼 줄어든다는 것이다.
3) RAID 3
RAID 3는 RAID 0의 구조에 parity disk를 추가한 구조이다.
parity disk는 장애 발생 시에 에러를 잡고 복구하기 위해 사용되는 것이다.
보통은 해밍 코드를 많이 사용한다고 한다.
장점은 RAID 0이 가지는 장점과 더불어 한 disk에 장애가 발생했을 때 parity 정보를 이용하여 복구할 수 있다는 것이다.
단점으로는 file에 write 시에 parity를 생성해야하므로 parity 계산이 필요하여 overhead가 발생하고 write가 몰릴 시에 병목현상이 발생할 수 있다는 것이다.
RAID 0와의 차이점은 RAID 0은 block 단위로 쪼개어 각각의 disk에 저장했지만 RAID 3는 Byte 단위로 분할하여 각각의 disk에 저장한다.
Byte 단위로 분할함에 따라 모든 disk에 입출력 부하가 균등하게 분배될 수 있다.
4) RAID 4
RAID 4는 RAID 3와 유사한 구조이지만 차이점은 Block 단위로 분산 저장한다는 것이다.
block 단위로 분산 저장함에 따라 block마다 독립된 access가 가능해진다.
하지만, 하나의 disk에 몰릴 수 있어 disk간 균등 분배가 안될 수 있다는 단점이 있다.
장점은 parity 정보를 이용하여 장애 발생 시에 복구할 수 있다는 것이고 단점은 RAID 3와 똑같다.
5) RAID 5
RAID 5는 RAID 3와 RAID 4를 보면 parity disk를 따로 관리하는데 해당 disk가 장애가 발생했을 때의 문제를 방지하고자 설계된 구조이다.
RAID 4와 유사하게 독립된 access가 가능하다.
다른 점은 parity 정보를 각 disk들에 분산 저장하여 parity disk의 병목현상 문제를 해소할 수 있다.
현재 가장 널리 사용되는 RAID level 중 하나로 높은 성능과 신뢰성을 가져다 준다.
[오늘의 나는 어땠을까?]
오늘은 pintos를 마무리 짓는 날이다.
내일도 오후 4시 전까지는 시간이 있지만 file system에 대한 복습을 할 생각이다.
어제까지는 알람을 듣지 못해서 오늘도 그럴까봐 걱정을 했지만 다행히 알람을 듣고 일어났다.
알람소리를 바꾼 것이 더 잘들려서 그런가..?
그렇게 하루를 시작하고 어느때와 같이 알고리즘 문제 2개를 풀고 공부를 시작했다.
계획한대로 공부를 하고 저녁을 먹기 전에 백신접종 1차를 하러 갔다.
지금 백신을 맞은지 4시간 30분정도 지났는데 그냥 오늘 하루가 피곤한건지 백신을 맞아서 노곤한건지 모르겠다.
일단은 오늘은 조금 일찍 들어가서 평소보다 1시간 더 많이 잘 생각이다.
살려고 백신을 맞았는데 무리하다가 죽으면 안되니까...
'기타 > SW 사관학교 정글' 카테고리의 다른 글
[SW 정글 92일차] 오늘의 하루 (0) 2021.11.03 SW 정글 13주차 회고 (0) 2021.11.02 [SW 정글 90일차] Project 4 과제를 파악하며 필요한 개념 정리 (0) 2021.11.01 [SW 정글 89일차] 난제, Project 4 (0) 2021.10.31 [SW 정글 88일차] File system 기초 개념 공부 마무리 (0) 2021.10.30