4.13. 컴파일러 및 개발 도구


glibc는 고급 스케줄러 옵션에 대해ched_setattrched_getattr 지원

이전에는 Cryostatglibc 는 <sched.h>에 정의된 함수를 통해 제한된 Linux 스케줄러 옵션 집합에 대한 액세스 권한만 제공했습니다. 이러한 제한은 직접 시스템 호출 또는 Linux 커널 헤더를 사용하여 고급 스케줄링 기능에 액세스하는 데 필요한 애플리케이션입니다.

이번 개선된 기능을 통해 ched_setattr 및 ched_getattr 의 확장 가능한 스케줄러 구성 메커니즘을 이제 Cryostatglibc Cryostat <sched.h > 헤더 파일을 통해 사용할 수 있습니다. 이러한 변경에는 Cryostat_DEADLINE과 같은 추가 스케줄링 정책 지원이 포함됩니다.

결과적으로 애플리케이션은 직접 시스템 호출 또는 커널 특정 헤더에 의존하지 않고 광범위한 스케줄링 옵션 중에서 선택하여 개발자의 이식성과 유연성을 향상시킬 수 있습니다.

Jira:RHEL-56627[1]

glibc pthread_gettid_np 함수가 libc_nonshared.a에 추가됨

이전에는 glibc thread_t handle에서 Linux 작업 또는 스레드 ID(TID)를 가져올 수 있는 직접 방법이 없었습니다. 새로 구현된pthread_gettid_np 함수는 Cryostat <pthread.h >에 선언되어 있습니다._GNU_SOURCE 가 정의되면 이제 Cryostatsched_setattr 을 사용하는 사용자와 같은 TID가 필요한 애플리케이션을 통해 GROUPpthread_t handle에서 직접 TID 값을 검색할 수 있습니다.

결과적으로 애플리케이션은 이제 kafkapthread_t 처리에서 가져온 후 TID를 예상하고 호환성을 개선하고 스레드 관리를 단순화하는 함수를 사용할 수 있습니다.

Jira:RHEL-83017

inet_ntopinet_pton에 대한 glibc 강화 지원 추가

이전 버전에서는inet_ntop 및 et_pton의inet_pton 에는 Source Fortification 지원이 포함되지 않아 프로그램을 실행하기 전에 컴파일러에서 일부 버퍼 오류를 파악할 수 없었습니다.

이번 업데이트를 통해inet_ntopet_pton 에 속성 액세스 주석이 추가되어 컴파일러가 잠재적인 버퍼 오용에 대해 경고할 수 있습니다. API는 이제 Source Fortification의 적용을 받아 보안 및 신뢰성을 향상시킵니다.

Jira:RHEL-44920[1]

GDB는 IBM의 z17 CPU 아키텍처를 지원

gdb 패키지는 IBM의 z17 CPU 아키텍처와 함께 도입된 새로운 하드웨어 지침을 사용하는 바이너리를 지원하도록 향상되었습니다. 이번 업데이트를 통해 개발자와 시스템 관리자는 RHEL 9.7에서 최신 IBM Z 하드웨어에 대해 컴파일된 애플리케이션을 디버깅할 수 있습니다.

Jira:RHEL-50069[1]

GCC Toolset 15 사용 가능

이번 업데이트를 통해 RHEL 9.7에서gcc-toolset-15 를 사용할 수 있습니다. 툴 세트에는 지원되는 최신 버전의 GCC 및 관련 유틸리티가 포함되어 있어 개발자가 최신 컴파일러 기술을 사용하여 애플리케이션을 빌드, 테스트 및 배포할 수 있습니다.

Jira:RHEL-81741[1]

ELFv2 ABI 지원-fpatchable-function-entry on ppc64le

이전에는 ppc64le 아키텍처의 ELFv2 ABI를 지원하지 않아해당 ABI에 대한 잘못된 위치에 NOP 명령이 생성되었습니다. 이 문제로 인해 ELFv2를 대상으로 할 때 옵션을 올바르게 사용할 수 없었습니다.

이번 업데이트를 통해 이제 ppc64le에서 ppc64le을 사용하여 ELFv2 ABI용 프로그램을 생성하고 NOP가 올바르게 배치되고 이 플랫폼에 구축된 사용자의 호환성을 향상시킬 수 있습니다.

Jira:RHEL-75806[1]

LLVM 20에 기반 LLVM -toolset

llvm-toolset 은 LLVM 20으로 업데이트되어 코드 생성, 성능 최적화 및 C, C++ 및 Rust 워크플로우 전반에 걸쳐 확장된 언어 프런트 엔드 및 라이브러리 지원을 제공합니다. 이 리베이스는 rust rust의 재빌드를 포함하여 RHEL의 종속 구성 요소를 정렬합니다. 여기에는rust,annobin, Cryostatbcc, Cryostat bftrace, Cryostatqt5-qttools, 그리고메사. 빌드는llvm-20.1.8-3.el9 를 사용하여 검증됩니다.

주요 변경 사항은 다음과 같습니다.

  • ppc64le 에 대한 수정 사항을 포함하여 백엔드 개선 사항
  • 일반 성능 및 안정성을 위해 Clang 및 LLVM의 최적화 및 진단 개선 사항.
  • 조정된 패키지로 툴체인 에코시스템을 새로 고침하면 LLVM 20과의 호환성을 위해 다시 빌드됩니다.
  • 이 스트림에서 ARM 및MIPS의 업스트림 방향과 일치하는 이전 대상을 계속 사용 중단.

Jira:RHEL-81006

여러 동적 링커 네임스페이스가 있는 애플리케이션 디버깅을 위한 _r_debug 확장 지원

Cryostatglibc 패키지에는 여러 네임스페이스를 지원하는 백포트된 _r_debug 확장이 포함됩니다. 이전 버전에서는 실행 중인 프로세스에 연결하거나 코어 덤프를 분석할 때 애플리케이션에서dlmopen 또는 audit 모듈을 사용하여 여러 네임스페이스를 사용한 경우 GDB와 같은 디버거에서 로드된 모든 공유 오브젝트를 표시할 수 없었습니다.

이번 업데이트를 통해 최신 GDB 버전은 모든 동적 링커 네임스페이스에서 공유 오브젝트를 표시하여 포괄적인 디버깅 및 분석 기능을 제공할 수 있습니다.

Jira:RHEL-101986[1]

glibc의 예외 처리 성능 개선

이번 업데이트 이전에는 대규모 애플리케이션에서 예외 처리가 느려서 특히 많은 사용자 또는 자주 예외가 있는 환경에서 성능에 영향을 미쳤습니다. 이는 _Unwind_Find_FDE 에서 호출되는 __dl_iterate_phdr 함수에 소요된 시간 때문입니다.

이번 업데이트를 통해 glibc 의 예외 처리 알고리즘이 개선되어 예외 처리 속도가 향상되었습니다. 이번 업데이트에서는 Cryostat__epoll_pwait2_time64, Cryostat_dl_find_object, Cryostatepoll_pwait2, GROUPposix_spawn_file_actions_addtsetrps_pwait2를 포함하여 GLIBC_ 2.35의 일부로 ABI에 새로운 기호를 도입합니다. posix_spawnattr_tcgetpgrp_np, 그리고posix_spawnattr_tcsetpgrp_np.

Jira:RHEL-93320

메모리 할당 실패 시 glibc qsort 동작 강화

메모리 할당에 실패하면 glibc 패키지의 qsortqsort_r 함수는 힙 정렬 대체를 사용합니다. 이러한 변경으로 인해 잘못된 비교 함수의 처리가 향상되고 메모리 할당이 실패할 경우 성능을 더 예측할 수 있습니다.

폴백은 안정적인 정렬이 아니므로 동일한 요소가 다른 순서로 나타날 수 있습니다. C 표준은 안정성이 필요하지 않습니다.

Jira:RHEL-24168

GDB 는 16.3 버전으로 업데이트됨

이번 gdb 를 RHEL 9.7에서 버전 16.3으로 업데이트하면 다음과 같은 주요 개선 사항이 제공됩니다.

  • Intel MPX에 대한 지원 삭제
  • Intel의 LAM(Linear Address masking) 및 aarch64의 Memory Tagging Extension(MTE)을 포함하여 태그된 데이터 포인터에 대한 지원이 추가되었습니다.
  • 성능 향상을 위해 배경 DWARF 읽기 활성화.
  • 향상된 Intel 프로세스 추적(레코드 btrace):

    • 설정된 btrace pt 이벤트 추적을 사용하여 비동기 이벤트 인쇄를 활성화합니다.
    • 이제 Ptwrite 페이로드를 Python에서 RecordAuxiliary 개체로 액세스할 수 있습니다.
  • Python 통합 개선:

    • 이제 stop 이벤트에 details 속성, mirroring>-< "*stopped" 이벤트가 포함됩니다.
    • GDB.Progspace() 는 더 이상 개체를 직접 생성하지 않으며 다른 API로 개체를 가져와야 합니다.
    • 사용자 정의 속성은 gdb.Inferiorgdb.InferiorThread 개체에 추가할 수 있습니다.
    • 새 이벤트 소스 도입: gdb.tui_enabled.
    • gdb.record.clear 를 추가하여 현재 레코딩의 추적 데이터를 지웁니다.
    • 누락된 objfiles 및 디버그 정보를 처리하기 위한 모듈이 추가되었습니다.
    • 새로운 클래스 gdb.missing_debug.MissingDebugInfo 를 하위 분류하여 누락된 디버그 정보를 처리할 수 있습니다.
    • 새로운 속성 gdb.Symbol.is_a artificial.
    • 여러 도메인에서 기호 조회를 위한 새로운 상수입니다.
    • 새 함수 gdb.notify_mi(NAME, DATA) 는 사용자 지정 async 알림을 내보냅니다.
    • 값 내용을 읽고 쓰기 위한 새로운 속성 gdb.Value.bytes.
    • CTRL-C 인터럽트를 시뮬레이션하기 위해 gdb.interrupt 를 추가했습니다.
    • 새 속성 gdb.InferiorThread.ptid_string 은 대상 ID를 제공합니다.
  • 디버그 어댑터 프로토콜 (DAP) 변경:

    • 전역 변수 및 마지막 반환 값을 포함하도록 업데이트된 "범위" 요청.
    • "시작" 및 "연결" 요청은 언제든지 "configurationDone" 후에 적용할 수 있습니다.
    • "변수" 요청은 더 이상 인공 기호를 반환하지 않습니다.
    • "프로세스" 이벤트 및 "cancel" 요청에 대한 지원이 추가되었습니다.
    • "연결" 요청에서 이제 프로그램 지정이 지원됩니다.
  • 스타일링, 언어 프레임 불일치 경고, 누락 objfile 처리기 및 함수 호출 시간 초과에 대한 새로운 명령을 도입했습니다.
  • 개선 및 이름 변경( disassemble 대한 오류 처리 개선, 느낌표 변경)을 포함하여 몇 가지 명령이 개선되어 unwind-on-signal을 설정합니다.
  • 파일 상태 및 메모리 가져오기에 대한 새 패킷 및 복제 와 같은 새로운 중지 이유를 포함하여 확장된 원격 패킷 지원
  • 스레드별 이벤트 보고 옵션 및 주소 태그 지정 검사가 도입되었습니다.

Jira:RHEL-91381

글로벌 GPU 데이터 수집에 대해 AMD GPU pmda 가 활성화됨

이번 업데이트 이전에는 커널에서 완전한 지원에 필요한 특정 기능이 없기 때문에 RHEL에서는 AMD GPU PMDA(Performance Co- Cryostat 메트릭 에이전트)를 사용할 수 없었습니다.

이번 업데이트를 통해 이제 pcp-pmda-amdgpu 패키지를 사용하여 RHEL의 AMD GPU에서 글로벌 GPU 데이터를 수집할 수 있습니다.

Jira:RHEL-83154

IBM Z z17에 대한 초기 지원이 Cryostatglibc에 추가되었습니다.

Cryostatglibc 의 동적 로더는 IBM z17 CPU 또는 특정 기능을 감지할 수 있도록 향상되었습니다. 결과적으로usr/lib64/glibc-hwcap/z17/ 디렉터리에 설치된 IBM z17 최적화 라이브러리가 z17 시스템에 자동으로 로드됩니다. 이번 업데이트에서는 IBM Z z17 플랫폼의 하드웨어 호환성 및 성능이 향상되었습니다.

Jira:RHEL-50086[1]

버전 1.88.0에 따라 rust Toolset rebased

RHEL 9.7은 버전 1.88.0의 Rust Toolset과 함께 배포됩니다. 이 업데이트에는 다음과 같은 주요 개선 사항이 포함되어 있습니다.

  • 이제 rust 2024 Edition이 안정적입니다. 이는 중요한 언어 변경을 가능하게 하는 주요 옵트인 릴리스이며 현재까지 출시된 가장 큰 버전입니다.
  • let 체인으로 2024 Edition을 활용하여 fluent &&-chaining of let statements within if and while conditions to reduce nesting and improve readability.
  • 고성능 컴퓨팅의 경우 대상 기능을 활성화하면 안전한 Rust에서 여러 std::arch 내장을 직접 호출할 수 있으므로 특정 CPU 기능에 직접 액세스할 수 있습니다.
  • 비동기 정렬이 지원되어 비동기 프로그래밍에 대한 최고 수준의 솔루션을 제공합니다. 이러한 클러닝은 캡처에서 차용하고 AsyncFn 특성을 사용하여 높은 수준의 기능 서명을 올바르게 표현할 수 있습니다.
  • 특성 upcasting을 사용하면 트레잇 오브젝트에 대한 참조를 분류하여 특히 Any 특성을 사용하여 공통 패턴을 단순화합니다.
  • 이제 Cryostat는 캐시를 자동으로 정리하여 1~3개월 내에 액세스하지 않는 기존 파일을 제거하여 디스크 공간을 관리하는 데 도움이 됩니다.

rust Toolset은 롤링 애플리케이션 스트림이며 Red Hat은 최신 버전만 지원합니다. 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 문서를 참조하십시오.

Jira:RHEL-81601

tzdata 에는 NEWS 파일이 포함되어 있습니다.

이번 업데이트를 통해 tzdata 패키지에는 시간대 데이터 변경 사항에 대한 정확한 설명을 제공하기 위해 각 릴리스와 함께 NEWS 파일이 포함되어 있습니다. 결과적으로 변경 사항을 자세히 검토할 수 있습니다. 사용자는 포함된 NEWS 파일을 검토하여 업데이트에서 변경된 내용을 파악할 수 있습니다.

Jira:RHEL-105043[1]

메트릭 역할에서 Apache Spark 메트릭 수집 및 내보내기 지원

이전에는 metrics 역할을 사용하여 Apache Spark 지표를 직접 수집하거나 내보낼 수 없었습니다. 이번 업데이트를 통해rhel-system-roles 패키지는 Apache Spark에서 메트릭을 수집하고 업데이트하는 지원을 추가합니다. 두 개의 새로운 부울 매개변수가 도입됩니다.

  • metrics_into_spark: false 이 경우 메트릭 값을 스파크로 내보낼 수 있습니다.
  • metrics_from_spark: false 이 경우 Spark에서 메트릭을 수집할 수 있습니다.

이제 Spark에서 메트릭을 검색하고 스파크로 메트릭 정보를 보내 Spark 워크로드에 대한 통합 및 모니터링 기능을 개선할 수 있습니다.

Jira:RHEL-78306

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat