Linux 6.19는 기본적으로 Microsoft C 확장 기능을 활성화할 수 있습니다.

키 포인트:
  • Linux 6.19에서는 GCC와 Clang에서 기본적으로 -fms-extensions를 활성화할 수 있습니다.
  • 이를 통해 Microsoft Visual C++에 특화된 C 구문을 사용할 수 있게 됩니다.
  • 이러한 변경의 목적은 커널 코드의 가독성을 높이고 복잡성을 줄이는 것입니다.
  • 리누스 토발즈는 이러한 포함에 반대하지 않습니다.
  • 또한 커널 6.18의 Minix 파일 시스템과 HID 하위 시스템에 대한 개선 사항도 포함되어 있습니다.

마이크로소프트-러브-리눅스

의 개발 리눅스 커널은 계속 발전하고 있습니다 다음 버전을 향해 가장 눈에 띄는 새로운 기능 중 하나 하나가 발견 기본적으로 Microsoft C 확장 기능을 활성화하는 제안-fms-extensions라고 하는 이러한 확장 기능은 kbuild-next 개발 브랜치의 일부입니다. GCC와 Clang 모두와 호환됩니다. 컴파일러가 비표준 C 언어 구조를 인식할 수 있도록 합니다. Microsoft Visual C++에서 영감을 받았으며, 다른 구조체 내에서 익명 구조체와 공용체를 사용하는 방식이 대표적입니다.

이 조치는 커널 소스 코드를 단순화하고 더 읽기 쉽게 만드는 것을 목표로 합니다. Microsoft C의 특정 기능을 활용하여 유익할 수 있는 방법을 모색합니다. 운영 체제 개발의 특정 맥락에서.

역사적으로 Microsoft 생태계와 연결된 요소를 채택하는 데 약간의 저항이 있었지만, kbuild-next에 이러한 패치가 있다는 것은 해당 변경 사항이 Linux 6.19 병합 창에 수용되는 데 가까워졌다는 것을 나타냅니다.

통합을 향한 한 걸음 더

제안된 두 패치는 옵션을 소개합니다. `-fms-extensions` 컴파일은 커널 빌드 프로세스 전반에 기본적으로 포함됩니다. 즉, GCC 또는 LLVM/Clang으로 컴파일된 모든 시스템 아키텍처와 구성 요소는 이러한 확장 기능에 액세스할 수 있습니다.

이 제안의 지지자 중 한 명인 개발자 Rasmus Villemoes는 다음과 같이 설명했습니다. 이러한 확장 기능을 활성화하면 "더욱 우아하고 깔끔한 코드"를 만들 수 있습니다. C. Villemoes는 Microsoft 기능이 필요할 때마다 추가 컴파일 플래그를 사용할 필요성을 없애면 이를 전역적으로 활성화하여 사용에 대한 사례별 논쟁을 피할 수 있고, 커널 내에서 보다 동질적인 개발 스타일을 촉진할 수 있다고 주장합니다.

리누스 토발즈의 암묵적 지지

이기는하지만 과거에도 비슷한 제안이 검토를 통과하지 못했습니다. 커널 메일링 리스트에서 이번에는 상황이 다른 것 같습니다리눅스의 창시자인 리누스 토발즈는 토론에 참여했으며 -fms 확장 기능의 활성화에 반대하지 않았습니다.

변경 사항이 Linux 6.19에서 공식적으로 구현될 수 있다고 제안합니다. 다른 저명한 개발자들의 반대가 없다면 말이죠. kbuild 컴파일 시스템과 관련된 패치 중 하나는 -fms-extensions 옵션이 사용자 지정 CFLAGS를 사용하는 아키텍처에도 적용되도록 하여 전체 커널 생태계에서 컴파일 일관성을 유지합니다.

La -fms-extensions를 채택하는 것은 기술적 단계를 나타냅니다. 이는 Linux 커널의 지속적인 발전 과정의 일부입니다. 사소한 세부 사항처럼 보일 수 있지만, 비표준 구문을 지원하는 기능은 특히 복잡한 구조에서 코드 작성에 더 큰 유연성을 제공합니다.

그러나, 일부 커뮤니티에서는 우려를 표명했습니다. Microsoft와 관련된 기능에 의존하는 것에 대해 우려를 표명하면서, 이것이 Linux에서 사용되는 C 코드의 이식성이나 순수성에 영향을 미칠 수 있다는 점을 우려했습니다. 그럼에도 불구하고 이 이니셔티브는 여러 개발자의 지원을 받고 있습니다. 단점보다 장점이 훨씬 더 크다고 믿는 사람들.

커널의 최근 발전

Microsoft C 확장에 대한 논의 외에도 Linux 커널 6.19에는 Minix 파일 시스템 드라이버에 대한 수정 사항도 포함됩니다.이 형식은 40년 이상의 역사를 가지고 있습니다. 이 드라이버에서 손상 오류가 발견되었으며, 계획된 수정을 통해 손상된 이미지의 관리 및 복구가 개선되어 읽기 및 쓰기 오류에 대한 시스템의 안정성이 향상될 것입니다.

이러한 개선은 오래되었지만 여전히 교육 또는 실험적 맥락에서 사용되는 시스템에서 하위 호환성과 안정성을 유지하려는 Linux 개발자들의 지속적인 노력을 보여줍니다.

버전 6.19가 마무리되는 동안 커널 팀은 이전 업데이트 작업을 계속하고 있습니다.현재 다섯 번째 릴리스 후보(6.18-rc5)인 Linux 6.18은 햅틱 터치 패널 지원, Sony DualSense 컨트롤러 오디오의 향상된 관리, HID-BPF의 더 큰 유연성 등의 새로운 기능으로 HID 하위 시스템을 개선합니다.

또한 hydraw에서 ioctl 호출 시 보안이 강화되었습니다.새로운 PIDFF 햅틱 기능과 Intel QuickI2C를 위한 고급 설정이 포함되었습니다. 이러한 최적화는 더 나은 사용자 경험을 제공하고 독점 운영 체제와의 하드웨어 호환성을 높이는 것을 목표로 합니다.

출처 : https://git.kernel.org/