-
[Unix] 파일 및 레코드 잠금운영체제/Unix 2019. 5. 8. 17:42
파일 및 레코드 잠금 목차 파일 및 레코드 잠금 fcntl() 함수 lockf() 함수 목표 파일 및 레코드 잠금의 필요성과 개념을 이해한다. 잠금의 두 가지 종류 권고 잠금과 강제 잠금에 대해 알아본다 파일 및 레코드 잠금의 필요성? 잠금을 사용하지 않은 경우 A라는 사람과 B라는 사람이 더블 통장을 쓴다. 더블 통장에는 100만 원이 들어가 있다. A라는 사람이 돈이 생겨 10만원을 입금하려 한다. B라는 사람은 돈을 사용할 일이 생겨 10만 원을 출금하려 한다. A가 통장에 접근하여 잔액 100만원을 읽는다. B도 통장에 접근하여 잔액 100만원을 읽는다. A는 100만원에 10만 원을 입금하여 잔액이 110만 원이 된 것을 확인했다. B는 A가 입금하기 전에 잔액을 읽었으므로 100만원에 10만 ..
-
[Unix] 링크운영체제/Unix 2019. 5. 7. 18:21
파일 시스템 파일 시스템의 구현 파일 상태 정보 디렉터리 링크 목표 링크의 개념에 대해 이해한다. 하드 링크를 구현한다. 심볼릭 링크를 구현한다. 링크의 개념이란? 기존의 파일에 또 다른 이름을 부여 하드 링크 - 파일 시스템 내의 동일한 i-node를 가리킴 심볼릭 링크 - 실제 파일/디렉터리의 경로명을 저장하는 링크 기존의 파일을 접근할 수 있는 다른 이름을 가진 파일이 생성 하드 링크란? 같은 파일 시스템 내에서만 사용 가능 파일 시스템 내의 동일한 i-node를 가리킴 명령어 : ln 하드 링크의 구현 $ ln existing.txt new ls -i 명령어를 이용해서 각각의 파일의 i-node를 확인해보자 심볼릭 링크란? 실제 파일/ 디렉터리의 경로명을 저장하는 링크 다른 파일 시스템에 있는 파..
-
[Unix] 디렉터리운영체제/Unix 2019. 5. 7. 17:42
파일 시스템 파일 시스템의 구현 파일 상태 정보 디렉터리 링크 목표 디렉터리 개념에 대해 간단하게 이해한다. 디렉터리 엔트리 구조체에 대해 이해하고 구조들을 살펴본다. 디렉터리의 구현 및 작동에 대한 이해 디렉터리 개념이란? 디렉터리는 일종의 파일이다. 디렉터리는 여러 관련 파일과 부디렉토리를 저장하는 파일이다. 디렉토리는 디렉토리 엔트리들로 구성된다. 디렉터리 엔트리 구조체 디렉터리 : 파일과 부 디렉터리를 저장하는 파일 엔트리 : 참가자 명단. 즉 (파일 + i+node 번호) 디렉터리 엔트리 구조체 확인하기 디렉터리 엔트리 구조체를 확인하기 위해 필요한 함수 2개 opendir() 디렉터리 열기 함수 열기를 성공하면 DIR 구조체 포인터, 실패 시 NULL 리턴 readdir() 디렉터리 읽기 함수..
-
[Unix ] 파일 시스템운영체제/Unix 2019. 4. 30. 15:28
파일 시스템 파일 시스템의 구현 파일 상태 정보 디렉터리 링크 목표 파일시스템의 구조를 이해한다. i - node의 개념을 이해한다. 파일 시스템의 구현 파일 시스템의 구조 파일 시스템의 구조는 위와 같다. 부트 블록 : 파일 시스템의 시작부에 위치, 부트스트랩 코드가 저장 슈퍼 블록 : 전체 파일 시스템의 정보를 저장 리스트 : i-node 들의 list 저장 데이터 블록 : 파일 테이터를 저장하기 위하 블록 부트 블록은 운영체제가 시작 시 ROM에 저장되어있는 부트스트랩 코드에 접근하여 실행한다. 슈퍼 블록은 총 블록수, I-NODE의 개수, 블록 비트맵, 블록의 크기, 사용 중인 블록수, 사용 가능한 블록수 등 전체 파일 시스템의 모든 정보를 가지고 있다. I-LIST는 문자 그대로 I NODE들의..