Linux 커널 아키텍처와 플랫폼의 차이점

Linux 커널 아키텍처와 플랫폼의 차이점

Linux 커널 아키텍처와 플랫폼의 차이점을 알고 싶습니다. 최신 커널을 다운로드했을 때 tarball, 다른 이름의 프로세서가 포함된 arch라는 디렉토리를 발견했고, 프로세서 디렉토리 내에 platform이라는 또 다른 디렉토리가 있었습니다.

예를 들어:-

/arch/powerpcLinux 커널의 Arch 아래에 있는 디렉터리 /arch/powerpc/platforms입니다 powerpc.

그렇다면 이것이 실제로 무엇을 의미하는가?

하드웨어 관점에서 소프트웨어 관점까지 자세히 설명해 주실 수 있는 분 계신가요?

답변1

아키텍처는 프로세서 유형입니다. 아키텍처의 수는 상대적으로 적습니다. 동일한 사용자 코드를 실행하는 모든 프로세서 유형은 커널을 컴파일하는 방법이 다양하더라도 동일한 아키텍처로 분류됩니다. 예를 들어 단일 아키텍처 x86이지만 powerpc커널은 32비트 명령어 세트 또는 64비트 명령어 세트를 사용할 수 있습니다. -bit 명령 세트가 컴파일됩니다(32비트 커널은 32비트 프로그램만 실행할 수 있는 반면, 64비트 커널은 32비트 및 64비트 프로그램을 모두 실행할 수 있음).

플랫폼은 Linux가 관심을 갖는 하드웨어의 다른 모든 측면을 설명합니다. 여기에는 부팅 방식의 변경, 특정 주변 장치(예: 메모리 컨트롤러, 전원 관리 보조 프로세서, 암호화 가속기 등)의 작동 방식 등이 포함됩니다. 기능이 플랫폼에 따라 분류되는지 아니면 별도의 드라이버나 컴파일 옵션으로 분류되는지 여부는 부분적으로 해당 기능이 얼마나 기본적인지(예: 해당 기능을 사용하는 코드를 격리하는 것이 얼마나 어려운지)와 부분적으로 지원하는 코드를 작성하는 사람들이 어떻게 작성하는지에 따라 달라집니다. 기능은 그렇게 하기로 결정합니다.

관련 정보