답변:
유닉스 부팅 프로세스는 프로그램을 지능적으로로드하는 기능 (이전, 라이브러리로드 등)이 제한적입니다. 따라서 초기 프로그램은 디스크에 저장된 정확한 이미지로, 메모리에로드되고 커널로 이동하기 위해 "호출"되어야했습니다.
(압축 해제) 압축과 같은 훨씬 나중에 만 추가되었으며 더 강력한 부트 로더가 설치되었지만 이미지 이름이 붙어 있습니다.
단어 이미지 에는 "실제 작업 복사본을 만드는 데 필요한 모든 정보가 들어있는 파일"이라는 정의도 있습니다.
"이미지"가 디스크의 1 : 1 복사본이라는 의미는 아닙니다. 사진은 현실을 나타내는 것처럼 정확하게 는, 실행 프로그램 (또는 커널)의 이미지를 촬영할 때와는 시스템 메모리에로드 (또는 압축 해제) 할 수있는 상태에서 프로그램 나타내는 정확히를 그 다음과 같이 그것에 통제권을주었습니다. 그러면 해당 프로그램이 해당 상태에서 일관된 방식으로 실행을 시작할 수 있습니다. 따라서 Linux 커널 이미지는 Linux 커널 이미지를 제어 한 후 스스로 실행할 수있는 이미지 (상태 그림)입니다.
오늘날 부트 로더는 하드 디스크의 파일 시스템에서 이러한 이미지를로드하고 (드라이버가 필요함) 이미지를 대체하여 제어합니다. 컴퓨터의 부팅 프로세스는 운영 체제가 마지막으로 실행될 때까지 여러 번 수행됩니다. 이것을 체인 로딩 이라고 합니다. 또는 더 작은 프로그램 (체인)이 더 복잡한 프로그램을로드하는 경우이를 부트 스트랩 이라고 합니다.
BIOS는 이미지 인 부트 로더를로드합니다 (예 : boot.img
의 경우에 호출 됨) grub
. 이것은 boot.img
파일이 아닙니다 (grub이 설치된 경우). MBR (Master Boot Record)에있는 부품의 이름입니다. 파일로 덤프하면 디스크에 기록되지 않고 파일에 기록 된 파일 형태의 이미지가됩니다. 이것은 또한 grub
나머지 자체를로드 할 수 있는 가장 초기 상태의 표현 (이미지)입니다 . grub
그런 다음 다른 이미지를로드하여 완전히로드하는 방법에 대한 자체 메커니즘이 있습니다. 이는의 여러 단계로 표시 됩니다 grub
. 그 후, 부트 로더는 자신을 해당 파일의 추출 된 내용으로 대체하여 커널 이미지를로드합니다.
수학에서 커널은 일부 맵 이미지의 하위 집합에 대한 역상입니다. 하위 집합은 codomain의 identity 요소와 같습니다. 나는이 이름들이 수학의 다양한 분야에서 상당히 관련되어 있기 때문에 수학 개념에서 유래 한 것이 확실합니다. 유닉스가 학업 환경에서 파생되었다는 것을 고려하면이 단어의 커널과 이미지의 사용이 동일 할 수 있습니다.
"완전한"OS에 대한 정보 수준을 나타내는 세트가있는 경우 해당 정보가 그룹을 형성하는 경우 해당 세트에서 그룹 동형화를 정의하거나 기본적으로 크기가 다른 다른 세트에 맵핑 할 수 있습니다. 그것들을 그룹으로 만든 원래 세트의 구조를 "존중"합니다. 세트를 더 작은 세트 또는 서브 세트가 더 작은 일부 세트의 서브 세트에 맵핑하는 것이 유리하다는 것을 알 수 있습니다.
이미지-그룹 동형의 이미지와 일반적인 기능 및 맵은 요소가 실제로 매핑되는 일부 집합의 일부입니다. 이 함수는 모든 단일 요소에 매핑되지 않을 수 있으며 해당 요소는 이미지에 포함되지 않습니다.
커널-기본적으로 원본 세트의 이미지 만 이미지에 매핑되지만 이미지의 identity 요소에만 매핑됩니다. 기본적으로 이미지의 것과 같은 0으로 매핑되는 요소.
이미지의 크기가 원본 세트보다 작 으면 여러 항목이 하나의 단일 요소에 매핑되어야 함을 알 수 있습니다. 예를 들어 커널에서 이미지로 매핑되는 여러 요소가있을 수 있으며 이미 0으로 매핑되어야한다는 것을 알고 있습니다.
원래 세트를 이진 또는 1과 0의 유한 시퀀스로 선택하고 코 도메인 (매핑 된 세트)을 이진의 시퀀스로 선택하면 적절한 그룹 구조 인 경우에만 그러한 것들을 구성 할 수 있습니다. 정의 될 수있다 (이것은 깊이 있고 질문과 무관).
따라서 우리는 OS의 "커널"과 "이미지"가 완전히 정의되고 수학적 의미를 가지고 있음을 완전히 확신합니다. 다른 용어 사용과는 독립적입니다.