Linux 커널 5.0 RC1은 ARM big에서 사용할 수 있습니다. 약간의 EAS 지원, F2FS 수정 등

모든 Android 기기의 기반이 되는 Linux 커널이 버전 5.0으로 주요 업데이트를 받고 있습니다. 모바일과 관련된 변경 사항을 살펴보겠습니다.

우리는 일반적으로 메인라인 Linux 커널 영역에서 무슨 일이 일어나는지 다루지 않지만, Google이 최소 Linux 커널 버전 새로운 Android 버전이 출시될 때마다 요구사항이 적용됩니다. 최근 결정은 LTS 릴리스를 2년에서 6년으로 연장 장치 제조업체가 보안 패치 백포팅에 필요한 작업을 줄여야 하므로 보안 패치 조각화를 줄이는 데 중요한 역할을 할 것입니다. 또한 메인라인 커널은 모바일 장치와 관련된 새로운 기능을 통합하는 경우가 많습니다.

예를 들어, 첫 번째 릴리스 후보 빌드 다음 LTS 버전의 커널이 최근 출시되었습니다(Linux 커널 5.0 RC1). 안정적인 릴리스까지는 아직 한두 달 남았지만, 곧 출시될 릴리스에 어떤 내용이 포함될지 벌써부터 미리 엿볼 수 있습니다. 모바일 장치와 관련된 업데이트 중 일부를 강조하겠습니다. 하지만 오픈 소스 개발 및 Linux 커널에 관심이 있다면 전체 변경 로그를 살펴보는 것이 좋습니다.

팔이 크다. 작은 EAS 지원

에너지 인식 스케줄링 원래 Pixel이 출시된 이후로 Android 기기에서 중요한 문제였습니다. EAS는 Google Pixel 기기가 일반적으로 경쟁사보다 더 빠른 이유 중 하나입니다. Qualcomm의 Snapdragon 845 커널 릴리스에서는 이미 지원이 활성화되었으므로 이 SoC(또는 최신 버전)가 탑재된 모든 장치는 EAS를 지원합니다. 하지만 Linux는 지금까지 Energy Aware Scheduling에 대한 업스트림 지원을 제공하지 않았습니다. 업스트림 지원은 이론적으로 실리콘 및 장치 제조업체가 해당 기술을 장치에 구현하는 것을 더 쉽게 만들어줍니다. 그러나 최종 사용자에게는 업스트림 지원이 실제로 큰 의미가 없습니다.

아디안텀 지원

Speck은 NSA(National Security Administration)가 개발한 암호화 알고리즘으로 저가형 하드웨어에서 잘 작동합니다. Google

예정된 하드웨어 가속 암호화 확장 기능이 없는 SoC가 있는 예산 장치에 대한 데이터 암호화 지원을 제공하므로 스펙에 대한 지원을 추가합니다. Speck의 채택은 NSA와의 연관성 때문에 널리 비판을 받았습니다. Linux 커널 4.20에서는 speck에 대한 지원이 제거되었으며, 그 대체 버전인 Adiantum은 EXT4/F2FS 파일 시스템을 사용하는 저사양 하드웨어에서도 성능이 더 좋진 않더라도 비슷한 성능을 발휘합니다.

F2FS 및 EXT4 수정

플래시 친화적인 파일 시스템(F2FS)은 광대하게 사용 된 Android 기기에서. Google Pixel 3 및 Pixel 3 XL 공식적으로 F2FS 지원, 예를 들어. F2FS의 원 개발자인 김재극 씨가 리눅스 저장소에 파일 시스템에 대한 많은 수정 사항에 대한 병합 요청을 보낸 것으로 보입니다. 이러한 변경 사항은 가비지 수집 수정과 함께 암호화 문제 및 유휴 시간 관리를 처리합니다. 자세한 내용은 다음에서 모두 볼 수 있습니다. 이 풀 요청. 전반적으로 F2FS를 수정하면 F2FS를 지원하거나 지원할 Android 스마트폰의 안정성과 신뢰성이 향상됩니다.

마찬가지로 널리 사용되는 EXT4 파일 시스템은 12개가 넘는 패치를 받았습니다. EXT4는 최신 OnePlus 장치(포함)와 같은 많은 Android 장치에서 사용됩니다. 원플러스 5T, OnePlus 6 및 OnePlus 6T).

새로운 ARM 하드웨어 지원

GNU/Linux 배포판은 틀림없이 ARM 기반 하드웨어에서 실행되는 최고의 운영 체제입니다. 오픈 소스 모델을 기반으로 안정적인 멀티 태스킹을 제공합니다. ARM 프로세서는 한 번에 많은 작업을 수행하도록 특별히 설계되었습니다. 그렇기 때문에 OS가 하드웨어와 보조를 맞추는 것이 중요합니다. 여러분도 아시다시피 대부분의 Android 스마트폰과 태블릿은 ARM 아키텍처가 적용된 칩셋을 사용합니다. RISC 기반 칩은 일상적인 작업(스마트폰에서 수행하는 작업)을 실행하는 데 적합합니다. Linux 커널 5.0에는 다양한 새로운 ARM 하드웨어에 대한 지원이 추가되었습니다. 그 중 일부는 다음과 같습니다.

  • 테그라 X2
  • 테그라 자비에르
  • 올위너 F1C100
  • 퀄컴 QCS404
  • 올위너 T3
  • NXP 레이어스케이프 LX2160

특정 ARM 하드웨어에 대한 범용 호환성 지원 외에도 Linux 커널 5.0에서는 전원 관리 기능도 향상되었습니다.

바인더FS 지원

Android는 바인더를 사용하여 시스템의 여러 프로세스 간에 인수를 교환합니다. 애플리케이션, 활동 및 프로세스는 Binder를 사용하여 프로세스를 시작하고 관리합니다. Android의 보안은 UID 권한을 기반으로 합니다. 바인더는 양방향 IPC 호출을 사용하여 애플리케이션에서 제공한 UID를 확인하여 사용하려는 기능에 액세스할 수 있는지 확인합니다. BinderFS는 Binder의 업데이트 버전이지만 더욱 전문화되고 시스템과 호환됩니다. BinderFS에 대한 지원은 최종 사용자에게는 크게 변하지 않지만 장기적으로 개발자의 일부 구현 문제를 해결할 것입니다. 여기는 관련 커밋.

에너지 모델 관리 프레임워크

또 다른 추가 사항은 에너지 모델 관리 프레임워크에 대한 지원입니다. 이 변경 사항은 주로 ARM 및 커널 개발자를 위한 것입니다. 이는 장치 트리나 드라이버와 같은 다양한 소스로부터 표준화된 에너지 사용 정보의 새로운 계층을 제공합니다. 에너지 소비 및 보고는 하드웨어와 소프트웨어 모두에서 다르게 처리됩니다. 에너지 모델 관리 프레임워크는 커널의 다른 드라이버가 에너지 소비에 대한 정보에 액세스하는 데 사용할 수 있는 표준 API를 제공합니다. 이는 이론적으로 소프트웨어 엔지니어와 개발자가 하드웨어에서 관련 정보를 얻는 것을 더 쉽게 만듭니다. 이 프레임워크에 대해 자세히 알아볼 수 있습니다. 이 커밋에서.

ARM64 포인터 인증 지원

특히 모바일의 모든 관련 하드웨어 및 소프트웨어 솔루션에는 강력한 보안 프로토콜이 필요합니다. 이것이 Linux 커널 5.0이 ARM64 포인터 인증을 지원하여 제공하는 것입니다. 대부분의 스마트폰에는 ARM64 기반 칩셋이 있으므로 공격자가 메모리 주소에 액세스하기 위해 Linux 커널에서 사용되는 포인터를 악용할 수 없도록 하는 것이 중요합니다. 새로운 인증 프로토콜은 포인터를 비밀 키와 비교합니다. 포인터 인증은 ROP(반환 지향 프로그래밍) 및 기타 종류의 공격을 방지하려고 시도합니다.


Linux 5.0 커널에는 우리가 다루지 않은 더 많은 업데이트가 있습니다. 대부분은 Android 기기에 큰 의미가 없으므로 변경 로그를 선별적으로 선택해야 했습니다. 전체 '변경 로그'를 보려면 다음을 확인하세요. 포로닉스의 적용 범위.

XDA 인정 개발자에게 감사드립니다 flar2 이 기사를 도와주셔서.