728x90
가져오기
- 프로세스와 데이터를 메모리로 가져옴
배치
- 가져온 프로세스와 데이터를 메모리의 어떤 부분에 올려놓을지 결정
- 배치 작업 전 메모리를 어떻게 자를지 중요
- 같은크기
- 프로세스 크기에 맞게 자르기
- 나눈 메모리 구역에 따라 프로세스와 데이터를 어떤 위치에 놓을지 결정
재배치
- 새로운 프로세스를 가져와야 하는데 메모리가 꽉찬경우 프로세스를 하드디스크로 다시옮김
- 오래된 프로세스를 내보냄
가상 메모리
- 실제 메모리 크기와 관계없이 프로세스에 커다란 메모리 공간을 제공하는 기술
- 가상메모리 크기 = 실제 메모리 크기 + 스왑영역 크기
- 그러나 스왑이 일어나면서 교환하는 인터럽트가 발생하면서 문맥교환 시간이 발생하여 속도가 느려질 수 있다.
가상메모리와 빅데이터의 연관성
- 가상메모리가 있음으로써 메모리가 부족해도 스왑영역을 크게 잡고 작업을 하기에 더 큰 데이터를 처리할 수 있다.
저장장치
파일
- 논리적인 데이터 집합
- 하드디스크 또는 CD에 저장
- 파일의 성격을 알기 위해 확장자 사용
- 파일이름. 확장자
- ex(.avi.mp4)
- 파일명 작명
파일 = 파일헤더 + 내용
파일헤더
- 파일 이름, 버전, 크기, 만든 날짜 등의 정보 저장
실행파일
- 운영체제가 메모리로 가져와 CPU를 사용하여 작업하는 파일
- 사용자 요청으로 프로세스가 되는 파일
데이터파일
- 프로세스나 응용프로그램이 사용하는 데이터를 모아놓은 파일
디렉터리
- 윈도우에서 '폴더' 라고 함
- 관련 있는 파일을 하나로 모아 놓은 곳
- 최상위 디렉터리 를 시작으로 점점 확장되는 구조
- \는 루트 디렉터리를 의미
디렉터리도 파일임
- 일반 파일
- 데이터 저장
- 디렉터리
- 헤더 + 파일정보
- 헤더
- 디렉터리 이름, 만든시간, 접근권한
파일 시스템
포맷팅 [ formatting ]
- 디스크에 파일 시스템을 탑재하고 디스크 표면을 초기화하여 사용할 수 있는 형태
종류
- 빠른 포맷팅
- 데이터는 그대로 둔 채 파일 테이블을 초기화하는 방식
- 느린 포맷팅
- 파일 시스템을 초기화할 뿐 아니라 저장 장치의 모든 데이터를 0으로 만듬
- 시간이 많이 걸리지만 배드섹터 를 찾을 수 있음
파일 테이블
- 파일 이름, 위치 정보
모든 운영체제는 고유의 파일 테이블을 가짐
- 윈도우
- FAT 나 FTFS
- 유닉스
- i-node
데이터 전송 단위
운영체제와 하드디스크 간에 블록 단위로 데이터 전송
블록[block]
- 저장장치 에서 사용하는 가장 작은 단위
- 한 블록에 주소 하나를 할당
- 여러 섹터 [ 하드 디스크에서 가장 작은 저장 단위 ] 를 묶어 하나의 블록을 만듦
윈도우 FAT32
- 블록의 크기
- 4KB ~ 64KB
블록의 크기가 작으면
- 낭비되는 공간 없이 데이터 조밀하게 저장
- 입출력 속도가 느리다.
블록의 크기가 크면
- 큰 파일을 많이 저장 가능
하드디스크 조각 모음
컴퓨터가 오래되면 속도가 점점 느려짐
- 이유
- 조각화 또는 단편화
- 하드디스크를 처음 사용할 떄는 데이터 앞부터 차곡차곡 쌓이지만 사용하다 보면 파일이 삭제되면서 중간중간 빈 공간이 생김
- 조각화 또는 단편화
하드디스크에 조각이 많이 생기면 큰 파일을 여러 조각으로 나누어 저장하고, 이를 읽으려면 하드디스크의 여러 곳을 돌아다녀야함.
주기적으로 조각모음 을 해서 성능 향상
메모리 기반 저장장치
- 헤드를 움직여 데이터를 접근하지 않기 때문에 조각모음을 하지 않아도 성능 저하가 발생하지 않음
- 특정 위치의 메모리 셀만 계속 사용하면 수명이 단축됨.
- 전체 공간을 고루 사용하는 방식을 통해 수명을 늘림
윈도우 파일 시스템
FAT32
- 32GB
- 파일 하나의 크기 4GB
- NTFS를 사용하여 크기 늘림
- USB 메모리에서 사용
빈 공간 리스트
- 빈 공간을 효율적으로 관리하려고 파일 시스템은 빈 블록 정보만 모아놓은 구조
- 파일 삭제
- 실제 데이터가 지워지는것이 아님
- 파일 테이블의 헤더를 삭제하고 사용한 블록을 빈공간 리스트로 등록함.
리눅스 배포판
728x90
'대학교 코딩공부 > 빅데이터 프로젝트' 카테고리의 다른 글
빅데이터 프로젝트 4주차 [ 웹 크롤링 ] (0) | 2022.09.22 |
---|---|
빅데이터 프로젝트 4주차 [ 데이터 분류 ] (0) | 2022.09.22 |
빅데이터 프로젝트 4주차 [ 빅데이터 기본 ] (0) | 2022.09.20 |
빅데이터 프로젝트 3주차 [ 빅데이터와 머신러닝 ] (0) | 2022.09.13 |
빅데이터 프로젝트 1주차 (0) | 2022.09.01 |