DKU-Embedded-Lab / The-Linux-Programming-Interface

The Linux Programming Interface: A Linux and UNIX System Programming Handbook
0 stars 0 forks source link

Chapter14, 20 : File System, Signal #4

Open SeungBu opened 6 years ago

SeungBu commented 6 years ago

스터디 자료 : The Linux Programming Interface 시간 : 1/16 ( PM 1:00 ~ PM 3:00 ) 장소 : 미디어센터 517 호

( 보안랩실 세미나 겹치는 관계로 517호로 변경하였습니다.)

1. 스터디및 발표자료 작성

2. 연습문제 구현

3. 현재 스터디 질문 제출

발표자 : 김승부, 강민구

Signals.Fundamental Concepts.pptx - 강민구 (20장) - 2018-1_16_김승부_API스터디 14장.pptx - 김승부 (14장) - System call.pptx - 강민구 (시스템 콜 생성) -

ghost commented 6 years ago

14장

tmdgus1237 commented 6 years ago

20장

kangworld commented 6 years ago

14장

SeungBu commented 6 years ago

20장

tmdgus1237 commented 6 years ago
  1. 아래 링크에 들어가면 파일 시스템의 레이아웃이 있다. 이 그림을 보면 MBR이라는 마스터 부트 레코더가 맨 앞에 존재한다. 이것은 부트 섹터의 하나로, 파티션으로 분할된 저장장치의 가장 첫 부분에 존재하며, 파일 시스템을 포함한 해당 저장장치의 파티션이 어떻게 조직화되어 있는지에 대한 정보를 포함하고 있다. 또한 설치된 운영체제를 불러들이는 실행 코드인 부트 로더(boot loader)를 포함하고 있다. 컴퓨터가 부팅되면 MBR은 활성 파티션을 찾고 부팅 블록을 실행한다. 그런 다음 운영 체제가 파티션에 로드된다. 그렇기에 각 파티션마다 boot block을 가진다.

[참고] http://www.moreprocess.com/operating-systems/file-system-layout-in-operating-system

  1. VFS는 가상 파일 시스템으로 실제 파일 시스템 위의 추상 계층이다. VFS의 목적은 클라이언트 응용 프로그램이 여러 파일 시스템에 같은 방법으로 접근할 수 있게 하는 것이다. 상위 레벨의 파일시스템 인터페이스가 존재하기 때문에 응용 프로그램에서는 아무 구분 없이 OS의 시스템 콜을 호출하면 커널은 미리 등록되어 있는 파일 시스템 함수를 호출하여 그 종류에 상관없이 같은 결과를 볼 수 있다. file_operations structure

  2. super block은 파일 시스템에서 사용되는 주요 설정 정보들이 기록되어져 있다. 파일 시스템에서 논리적인 블록의 크기는 단순한 블록의 크기(1KB,2KB,4KB,8KB)를 나타내고 논리적인 블록에서 파일 시스템의 크기는 블록을 포함하는 파일 시스템의 크기를 이야기하는 것 같다. [더 자세한 것들] -파일 시스템에 의존하는 정보인 파일 시스템의 크기 -마운트 정보 -데이터 블록의 총 숫자 -Inode의 총 숫자 -블록 그룹번호 -블록의 크기(1KB, 2KB, 4KB, 8KB) -그룹 당 블록 수 -슈퍼 블록이 수정되었음을 알리는 정보 이와 같은 정보들을 저장한다.

  3. 마운트를 해석하면 설치하다, 장착하다는 뜻을 가지고 있고 흔히 마운트하다 라고 사용한다. 마운트 명령은 큰 파일 트리 일부 장치에있는 파일 시스템을 연결하는 역할을한다.

ghost commented 6 years ago

Q. 책에는 자세한 설명이 안나와 있어 코어덤프에 대하여 자세히 알고 싶어요 A. 코어덤프란 프로그램에서 특정한 시점에 작업 중인 메모리의 상태를 기록한 것을 말합니다. 보통 프로그램이 비정상적으로 종료가 되었을 때 만들어집니다. 코어덤프에는 CPU의 레지스터나 프로그램 상태 정보, 메모리 관리 정보 등이 포함되어 있고, 프로그램의 오류를 진단하기 위해서, 디버깅을 하기 위해서 사용이 됩니다. 코어덤프는 또다른 말로 메모리덤프라는 말로도 사용이 됩니다.

Q. 비특권 프로세스가 시그널을 보내기 위해 요구되는 권한에서 검사 대상에서 타깃의 유효 사용자 ID를 제외하는 데는 상호 보완적인 목적이 있다고 하는데 어떠한 것을 말하는 건가요?

Q. 전송이 블록된 시그널의 집합들은 어떻게 관리 되나용?