7장. 컴파일러 및 툴
IBM z Systems z13의 새로운 지침 지원
GCC의 새로운 버전은 SIMD 명령 지원과 함께 IBM z Systems z13의 새로운 하드웨어 지침을 지원합니다. 새 태그를 활성화하려면
-march=z13 명령줄 옵션이 필요합니다. (BZ#1182152)
GCC에서 POWER8에 대한 최적의 코드 생성
PowerPC 64 LE 아키텍처에서 GCC 컴파일러는 이제
--with-cpu=power8 및 --with-tune=power8 매개 변수로 구성되어 GCC에서 POWER8 플랫폼에 대한 최적의 코드를 생성하도록 합니다. (BZ#1213268)
Intel IMPK(Memory Protection Key) 지원
GCC 컴파일러에 대한 이번 업데이트는 IMPK 지원을 제공합니다 - 컴파일러는 이제 새로운 PKU 명령어를 생성할 수 있습니다. 새로운 명령은
-mpku 명령줄 옵션을 사용하여 활성화할 수 있습니다. (BZ#1304449)
gcc-libraries Rebased
gcc-libraries 패키지는 업스트림 버전의 다양한 버그 수정 및 개선 사항을 포함하도록 최신 GCC 5 버전으로 변경되었습니다. (BZ#1265252)
GDB에서 IBM z13 기능 지원
이번 업데이트에서는 IBM z13 기능을 활용하여 코드를 디버깅하기 위한 GDB 확장을 제공합니다. 여기에는 확장된 IBM z13 명령 분리 및 128비트 광범위한 벡터 레지스터
v0-v31 을 사용하여 SIMD 명령을 지원하는 작업이 포함됩니다. IBM z13에 최적화된 코드는 이제 inferior 호출 중에 올바른 명령 mnemonics, 벡터 레지스터 및 벡터 레지스터 콘텐츠를 검색 및 전달하는 GDB에 의해 디버깅될 수 있습니다. (BZ#1182151)
binutils 버전 2.25.1로 업데이트
새로운 재 기반 binutils 패키지의 주요 내용은 다음과 같습니다.
- 이제
문자열프로그램에는 로드 가능한 초기화된 데이터 섹션의 문자열만 출력하는 --data 명령줄 옵션이 있습니다. --all 명령줄 옵션과 일치하도록 기본 동작이 변경되었습니다. - 이제
문자열프로그램에는 표시되지 않는 ASCII 문자를 문자열의 일부로 처리하는 --include-all-whitespace 명령줄 옵션이 있습니다. 여기에는 캐리지 반환 및 새 줄 문자(line terminator)로 간주되는 새로운 라인 문자가 포함됩니다. - 이제
objcopy프로그램에는 이름이 지정된 섹션의 내용을 추출하여 별도의 파일에 복사하는 --dump-section 명령줄 옵션이 있습니다. - 이제
objcopy프로그램에서 섹션 이름을 사용하는 명령줄 옵션에서 와일드카드 문자를 지원합니다. - 이제 assembler에 --gdwarf-sections 명령줄 옵션이 있어
DWARF.debug_line섹션을 생성할 수 있습니다.이렇게 하면 해당 코드 섹션이 링커 가비지 컬렉션에 의해 제거될 때 해당 섹션을 쉽게 제거할 수 있습니다. (BZ#1341730)
IBM z Systems 아키텍처의 z13 확장 지원.
이번 업데이트에서는 하나의 패치로 결합된 여러 업스트림 패치를 제공하고 Red Hat Enterprise Linux 7 binutils 패키지에 적용됩니다. 이제 z13 확장 기능이 지원됩니다. (BZ#1364516)
MWAITX지원
32비트 AMD 및 Intel 아키텍처용 binutils 패키지는 이제
MWAITX 명령을 지원합니다. (BZ#1335684)
Zeppelin지원
32비트 AMD 및 Intel 아키텍처용 binutils 패키지는 이제
Zeppelin 확장 기능을 지원합니다. (BZ#1335313)
대규모 시스템 확장 지원
업데이트된 binutils 패키지에서 AArch64 어셈블러에 대한 Large System Extensions에 대한 지원을 제공합니다. 또한
.arch_extension 의사 작업에 대한 지원도 추가되었습니다. (BZ#1276755)
elfutils 버전 0.166으로 변경
elfutils 패키지에는 실행 가능한 코드의 생성 및 유지 관리와 관련된 여러 유틸리티 및 라이브러리가 포함되어 있습니다. 패키지가 버전 0.166으로 업그레이드되었습니다. 주요 개선 사항은 다음과 같습니다.
스트립풀(unstrip) - 이러한 유틸리티는 병합된 strtab/shstrtab 테이블로 ELF 파일을 처리할 수 있습니다.Elfcompress- ELF 섹션을 압축하거나 압축 해제하는 새로운 유틸리티입니다.readelf- 새로운-z,-decompress옵션.- 압축된 ELF 섹션을 처리하기 위해
libelf및libdw에 새로운 기능이 추가되었습니다.elf_compress,elf_compress_gnu,elf32_getchdr,elf64_getchdr,gelf_getchdr. libdwelf- a newdwelf_scn_gnu_compressed_size()function.- 새로운
libelf및libdwpkgconfig(패키지 구성) 파일.
(BZ#1296313)
valgrind 버전 3.11.0으로 업데이트
Valgrind는 메모리 디버깅, 메모리 누수 감지 및 애플리케이션 프로파일링에 사용되는 계측 프레임워크입니다. 패키지가 업스트림 버전 3.11.0으로 업그레이드되었습니다. 주요 개선 사항은 다음과 같습니다.
- ScanSetting의 register allocator는 이제 상당히 빨라지고 있으며, 이는 프로그램 시작(예: 프로그램 시작)과 같이 약 5% 더 빨라졌습니다.
- 이제 Intel AVX2 지원이 64비트 대상에서 더 완전해졌습니다. AVX2 가능 호스트에서 simulated CPUID는 이제 AVX2 지원을 나타냅니다.
- 자동 D-I 캐시 일관성을 제공하는 대상의
--smc-check옵션의 기본값이스택에서all-non-file로 변경되었습니다. 결과적으로 기본적으로 모든 대상에서 generated 및 자체 수정 코드를 제공하는 것입니다.
Memcheck 유틸리티의 새로운 기능은 다음과 같습니다.
--leak-check-heuristics옵션의 기본값은none에서모두로 변경되었습니다. 이는 특히 C++ 애플리케이션에 손실될 수 있는 블록 수를 줄이는 데 도움이 됩니다.--keep-stacktraces옵션의 기본값은 malloc->-<-free에서로 변경되었습니다. 메모리에는 약간의 비용이 발생하지만malloc-and-freeMemcheck는 던링 참조의 3개의 스택 추적, 즉 블록이 할당된 위치, 해제된 위치 및 해제된 후 액세스하는 위치를 표시할 수 있습니다.- 특정 벡터 루프로 인해 false-positive 오류가 발생하지 않도록
--partial-loads-ok옵션의 기본값이no에서yes로 변경되었습니다. - 새로운 gdb 모니터 명령 xb
[addr][len] 은 [addr]에서[len]바이트의 유효성 비트를 보여줍니다. 모니터 명령 xb 는 바이트 데이터 값을 해당 유효성 비트와 연결해야 하는 경우get_vbits보다 쉽게 사용할 수 있습니다. - block_list gdb monitor 명령이 향상되었습니다. 이제 다양한 손실 레코드를 출력할 수 있습니다. 이제
제한된 인수인 제한 [max_blocks], 인쇄된 블록 수를 제어하는 선택적 인수를 허용합니다. 블록 크기를 사용하여 블록이 발견된 경우 block_list 는 이제 블록 크기 이후의 16진수를 표시합니다. 손실 레코드/블록은 지정된 16진수를 통해 발견된 블록으로 제한될 수 있습니다. - 새로운
--expensive-definedness-checks=yes|no명령줄 옵션이 추가되었습니다. 이는 최적화된 코드에서 가끔 잘못된 초기화되지 않은 값 오류를 방지하는 데 유용합니다. 잠재적인 런타임 저하를 방지할 수 있으며 최대 25%까지 가능합니다. 그러나 속도 저하는 애플리케이션에 따라 크게 다릅니다. 기본값은no입니다.
(BZ#1296318)
valgrind에서 사용자 정의 할당 함수 가로채기
일부 애플리케이션은
glibc 할당자를 사용하지 않습니다. 결과적으로 valgrind 에서 이러한 애플리케이션을 실행하는 것이 항상 편리한 것은 아닙니다. 이번 업데이트를 통해 valgrind 는 프로그램이 일반 glibc 할당기를 사용한 것처럼 사용자 정의 메모리 할당 기능을 자동으로 가로채어 해당 프로그램에서 memcheck 와 같은 메모리 추적 유틸리티를 사용할 수 있습니다. (BZ#1271754)
systemtap 버전 3.0으로 변경
systemtap 패키지가 업스트림 버전 3.0으로 업데이트되어 여러 버그 수정 및 개선 사항을 제공합니다. 예를 들어, 번역기는 더 적은 메모리를 요구하도록 개선되고, 더 빠른 코드를 생성하고, 더 많은 함수 호출자 프로빙을 지원하고, 개선된 진단 기능을 제공하고, 기능 과부하 및 비공개 범위 지정을 위한 언어 확장을 포함하고, 실험적인
--monitor 및 --interactive 모드를 도입합니다. (BZ#1289617)
7세대 Core i3, i5, i7 Intel 프로세서 지원
이번 업데이트에서는 7세대 Core i3, i5, i7 Intel 프로세서(Kabylake-U/Y)에 대한 완전한 성능 모니터링 이벤트를 제공합니다. (BZ#1310950)
7세대 Core i3, i5, i7 Intel 프로세서 지원
이번 업데이트에서는 7세대 Core i3, i5, i7 Intel 프로세서(Kabylake-H/S)에 대한 완전한 성능 모니터링 이벤트를 제공합니다. (BZ#1310951)
libpfm 버전 4.7.0으로 변경
libpfm 패키지가 버전 4.7.0으로 업그레이드되었습니다. 이 버전은 다음과 같은 32비트 AMD 및 Intel 아키텍처를 지원합니다.
- Intel Skylake 코어 PMU
- Intel Haswell-EP uncore PMUs
- Intel Broadwell-DE
- Intel Broadwell(Webhook 코어)
- Intel Haswell-EP (core)
- Intel Haswell-EP (core)
- Intel Ivy Bridge-EP uncore PMUs (all boxes)
- Intel Silvermont core PMU
- Intel RAPL 이벤트 지원
- Intel SNB, IVB,>-<W 이벤트 테이블 업데이트
- Intel 이벤트 테이블의 주요 업데이트
- AMD Fam15h 노스브리지 PMU
(BZ#1321051)
gssproxy 이제 RELRO 및 PIE 지원
이제 GSS-API
gssproxy 데몬이 보안 관련 RELRO 및 PIE 컴파일 시간 플래그를 사용하여 데몬을 강화하도록 빌드됩니다. 결과적으로 gssproxy 는 로더 메모리 영역 덮어쓰기 시도 및 메모리 손상 공격에 대해 더 높은 보안을 제공합니다. (BZ#1092515)
iputils 버전 20160308
iputils 패키지가 업스트림 버전 20160308로 업그레이드되어 이전 버전에 비해 여러 버그 수정 및 개선 사항을 제공합니다. 특히 ping 명령은 이제 이중 스택을 인식합니다. IPv4 및 IPv6 주소를 모두 검사하는 데 사용할 수 있습니다. 이전 ping6 명령은 이제 ping 명령에 대한 심볼릭 링크로 이전과 동일한 방식으로 작동합니다. (BZ#1273336)
tftp 서버의 로깅 기능이 향상되었습니다.
로깅이 개선되면 Trivial File Transfer Protocol(TForwarded) 서버가 성공 및 오류를 추적할 수 있습니다. 예를 들어 클라이언트가 파일 다운로드를 성공적으로 완료하거나 실패 시 파일을
찾을 수 없는 메시지가 제공되면 로그 이벤트가 생성됩니다. (BZ#1311092)
rpwatch의 새로운 옵션: -p
이번 업데이트에서는
arpwatch 네트워크 모니터링 툴의 arpwatch 명령에 대한 option -p 를 도입합니다. 이 옵션은 무차별 모드를 비활성화합니다. (BZ#1291722)
이제 chrt 유틸리티에 새로운 옵션이 있습니다.
이번 업데이트에서는 chrt 유틸리티에 대한 새로운 명령줄 옵션 --deadline,--sched-runtime,--sched-period, --sched-deadline. 이러한 옵션은 커널 10.0.0.1
_DEADLINE 스케줄러를 활용하여 스크립트 및 명령줄 사용 시 데드라인 스케줄링 정책을 완전히 제어합니다. (BZ#1298384)
새로운 명령줄 유틸리티: lsipc
이번 업데이트에서는 프로세스 간 통신(IPC) 기능에 대한 정보를 나열하는 lsipc 유틸리티가 도입되었습니다. 이전 ipcs 명령과 비교하여 lsipc 는 더 자세한 정보를 제공하고, 스크립트에서 사용하기 쉬우며, 사용자에게 친숙한 것입니다. 이렇게 하면 스크립트 및 명령줄 사용 시 IPC 정보에 대한 출력을 보다 효과적으로 제어할 수 있습니다. (BZ#1153770)
libmount 및 findmnt 를 사용하여 검색하는 것이 이제 더 안정적입니다.
오버레이 파일 시스템의
st_dev 는 libmount 라이브러리 및 findmnt 유틸리티를 안정적으로 검색할 수 있는 기능을 제공하지 않습니다. 이번 업데이트를 통해 경우에 따라 안정성이 향상되는 경우 libmount 및 findmnt 검색이 st_dev 보다 다른 방법으로 마운트 테이블에 검색됩니다. (BZ#587393)
alternatives 유틸리티에 대한 새로운 --family 옵션
이번 업데이트에서는
alternatives 유틸리티에 대한 새로운 --family 옵션이 도입되었습니다. 소프트웨어 패키지 관리자는 이 옵션을 사용하여 동일한 그룹의 유사한 대체 패키지를 제품군으로 그룹화할 수 있습니다. 그룹 내의 제품군은 현재 사용되는 대체 항목이 제거되고 제품군에 속한 경우, 현재 대체 방법이 제품군 내에서 우선 순위가 가장 높은 패키지로 변경됩니다.
예를 들어 시스템에는 동일한
대체 그룹 a1, a2, a3, b 에 설치된 패키지 4개가 있습니다(우선 순위가 증가함). a1, a2, a3 패키지는 동일한 제품군에 속합니다. a1 현재 사용되는 대안입니다. a1 이 제거되면 현재 사용된 대체 항목이 a3 로 변경됩니다. b 은 b 보다 우선 순위가 낮기 때문에 a1 가 a2 의 제품군 외부에 있고 a2 가 되지 않기 때문에 a3 이 되지 않습니다.
이 옵션은 각 대안에 대한 우선 순위를 설정하는 것만으로는 충분하지 않은 경우에 유용합니다. 예를 들어, 모든 openjdk 패키지를 동일한 제품군에 배치하여 해당 패키지 중 하나가 제거되면 대안으로 다른 openjdk 패키지로 전환되지 않고 java-1.7.0-oracle 패키지로 전환하지 않도록 할 수 있습니다(다른 openjdk 패키지가 설치된 경우). (BZ#1291340)
sos 버전 3.3에 기반
sos 패키지가 업스트림 버전 3.3으로 업데이트되어 다음과 같은 여러 개선 사항, 새로운 기능 및 버그 수정을 제공합니다.
- OpenShift Enterprise 3.x 지원
- 개선 및 확장된 OpenStack 플러그인
- Open vSwitch 지원 개선
- Kubernetes 데이터 수집 강화
systemd저널 컬렉션에 대한 지원 개선- 개선된 디스플레이 관리자 및 3D 가속 데이터 캡처
- Pacemaker를 포함한 Linux 클러스터 지원 개선
- 확장된 CPU 및 NUMA 토폴로지 수집
- 설명: IBM z Systems (IBM z Systems)
- 다중 경로 토폴로지 컬렉션 (BZ#1293044)
ethtool 버전 4.5로 변경
ethtool 유틸리티를 사용하면 속도, 포트, 자동 협상, PCI 위치, 많은 네트워크 장치, 특히 이더넷 장치와 같은 설정을 쿼리하고 변경할 수 있습니다. 패키지가 업스트림 버전 4.5로 업그레이드되었습니다. 주요 개선사항은 다음과 같습니다.
- SFP 일련 번호 및 날짜가 EEPROM 덤프에 포함 (옵션
-m) - 누락된 광고 속도 추가, 10GbE 및 gRPCGbE 조합의 일부 조합
- VMware vmxnet3에 대한 레지스터 덤프 지원 추가 (옵션
-d) - 기본
Rxflow indirection 테이블 설정 지원 추가 (옵션-X)
(BZ#1318316)
pcp 버전 3.11.3을 기반으로
PCP(Performance Co-Pilot)는 시스템 수준 성능 측정의 수집, 보관 및 분석을 위한 도구, 서비스 및 라이브러리 제품군입니다. 패키지가 3.11.3 버전으로 업그레이드되었습니다. 주요 개선 사항은 다음과 같습니다.
PCP-ipcs- 프로세스 간 통신을 표시하는 새 명령PCP-atopsar- http://atoptool.nl 기반 새로운 PMAPI sar 명령PCP-vmstat-pmstat가vmstat와 유사하게 수정된 래퍼libpcp- 새가져오기 그룹APIpmdamic- IntelMiC 카드 지표의 새로운 PMDApmdaslurm- 새로운 PMDA 내보내기 HPC 스케줄러 지표pmdapipe- 명령 출력 이벤트 캡처 PMDApmdqcowfs- 장치별 XFS 메트릭 지원pmdavmware- 현재 VMWare Perl API에서 작동하도록 업데이트pmdaperfevent- 파생 메트릭을 둘러보는 다양한 개선 사항; NHM 및 WSM에 대한 참조 클럭 사이클 추가pmdaoracle- Oracle 데이터베이스 메트릭 사용 및 업데이트pmdads389- 정규화 dn 캐시 지표 추가pmdalinux- numa 노드 메모리 대역폭당 메트릭, 공유 메모리 세그먼트, IPC, MD 드라이버 통계, 투명한 페이지 할당 페이지 alloc 카운터, NVME 장치, IPv6 메트릭 추가pmdaelasticsearch- 기본적으로 로컬 노드 메트릭으로 제한되고elasticsearchAPI 변경에 맞게 조정pmdqcowfs- 장치별 XFS 메트릭 지원pmrep- 강력하고 주의미한 metric-reporting 유틸리티pmlogconf-mmv에서 제공하는 Oracle 데이터베이스, nginx, elasticsearch, memcache 및 애플리케이션 메트릭의 자동 레코딩 지원zbxpcp- Zabbix v2 및 v3을 동시에 지원하는PCP메트릭용 Zabbix 에이전트 로드 가능 모듈pmcd-pmdaroot를 통해 PMDAs 시작을 지원하므로pmcd를 다시 시작하지 않고도 PMDA 오류를 다시 시작할 수 있습니다.sar2pcp- 추가mem.util메트릭 및 sysstat-11.0.1 명령 지원pmmgr- 일반 모니터 프로그램 시작 옵션 추가PCP-atop- 최신atop기능 (특히 NFS 관련)으로 업데이트libpcp- 서버 인증서의 이름을 사용자 지정할 수 있습니다. 영구, 글로벌 파생 메트릭 및 다중 아카이브 컨텍스트에 대한 지원이 추가되었습니다.pmdaproc-cgroupblkiothrottle 처리량 및 IOPS 지표PCP-iostat- 정규식을 사용하여 장치 이름 일치에-R플래그를 추가하고합계,vg,min또는max 통계의-G플래그pmieconf- 응답하지 않는 PMDA 재시작을 자동화하는 새로운 규칙
(BZ#1284307)
OpenJDK 8 에서 ECC 지원
이번 업데이트를 통해 ECC(Elliptic Curve Cryptography) 및 TLS 연결에 대한 관련 암호 지원이
OpenJDK 8 에 추가되었습니다. 대부분의 경우 ECC는 보안 네트워크 연결을 설정하기 위한 이전 암호화 솔루션보다 우선합니다. (BZ#1245810)
이제 pycurl 에서 TLSv1.1 또는 1.2가 필요한 옵션을 제공합니다.
이번 업데이트를 통해 TLS 프로토콜의 1.1 또는 1.2 버전을 사용해야 하는 옵션을 지원하도록
pycurl 이 향상되어 통신 보안이 향상되었습니다. (BZ#1260407)
Perl Net:SSLeay 에서 타원 곡선 매개 변수 지원
elliptic-curve 매개변수 지원이 OpenSSL 라이브러리에 바인딩이 포함된 Perl
Net:SSLeay 모듈에 추가되었습니다. 즉, EC_KEY_by_curve_name(), EC_KEY_free*(), SSL_CTX_set_tmp_ecdh() 및#177J _txt2nid() 서브루언트가 업스트림에서 포트되었습니다. 이는 IO::Socket::SSL Perl 모듈에서 Elliptic Curve Diffie-Hellman Exchange (ECDHE) 키 교환을 지원하는 데 필요합니다. (BZ#1316379)
Perl IO::Socket::SSL 에서 ECDHE 지원
IO::Socket::SSL Perl 모듈에 대한 Elliptic Curve Diffie-Hellman Exchange (ECDHE) 지원이 추가되었습니다. 새로운 SSL_ecdh_curve 옵션은 OID(Object Identifier) 또는 Name Identifier(NID)로 적절한 곡선을 지정하는 데 사용할 수 있습니다. 결과적으로 IO::Socket:SSL 을 사용하여 TLS 클라이언트를 구현할 때 기본 타원 곡선 매개변수를 재정의할 수 있습니다. (BZ#1316377)
tcsh 에서 시스템 할당 함수 사용
tcsh 명령 언어 인터프리터는 이제 기본 제공 할당 함수 대신 glibc 라이브러리의 할당 함수를 사용합니다. 이렇게 하면 malloc() 라이브러리 호출의 이전 문제가 제거됩니다. (BZ#1315713)
Python 성능 향상
이제
CPython 인터프리터는 Python 바이트 코드를 실행하는 메인 switch 문에서 계산된 goto 문을 사용합니다. 이 향상된 기능을 통해 인터프리터는 C99 표준에 필요한 bounds 검사를 방지할 수 있으며, CPU에서 더 효율적인 분기 예측을 수행하여 파이프라인 플러시를 줄일 수 있습니다. 이번 개선된 기능으로 Python 코드는 이전보다 훨씬 빠르게 해석됩니다. (BZ#1289277)
Telnet 은 이제 login을 호출할 때 IP 주소를 사용하는 -i 를 허용합니다.
네트워크의 컴퓨터에 여러 IP 주소가 있는 경우 이전에는 하나의 주소를 사용하여
telnet 서버에 연결할 수 있었지만 다른 주소는 /var/run/utmp 파일에 저장되었습니다. telnet 유틸리티가 DNS 조회를 수행하지 못하도록 telnet 이 로그인 유틸리티를 호출할 때 특정 IP 주소를 사용하는지 확인하려면 이제 -i 옵션을 사용할 수 있습니다. i 는 Debian 시스템의 -N 옵션과 동일한 방식으로 작동합니다. (BZ#1323094)
sg3_utils 버전 1.37-7로 업데이트
sg3_utils 패키지는 SCSI(Small Computer System Interface) 명령 세트를 사용하는 장치에 명령줄 유틸리티를 제공합니다. 이번 업데이트를 통해
sg_inq 및 sg_vpd 유틸리티를 통해 스토리지 장치에 대한 추가 기능 정보를 디코딩할 수 있습니다. 또한 이제 날짜 및 소프트웨어 버전 정보가 올바르게 표시됩니다. sg_rdac 유틸리티도 수정되었으며 10바이트 Command Descriptor Block (CDB) 모드를 지원하므로 최대 256개의 논리 단위 번호(LUN)를 관리할 수 있습니다. (BZ#1170719)
Python 표준 라이브러리의 HTTP 클라이언트에 대한 SSL/TLS 인증서 확인에 대한 새로운 설정 옵션
Python 표준 라이브러리의 HTTP 클라이언트에 대해 SSL/TLS 인증서 확인을 위한 새로운 애플리케이션 및 프로세스별 구성 옵션이 추가되었습니다. 옵션은 493 Python 기능 개선 제안 (https://www.python.org/dev/peps/pep-0493/)에 설명되어있습니다. 기본 글로벌 설정은 계속 인증서를 확인하지 않습니다. 자세한 내용은 https://access.redhat.com/articles/2039753 에서 참조하십시오. (BZ#1315758)
glibc 에서 BIG5-HKSCS-2008 문자 세트를 지원
이전에는
glibc 에서 이전 버전의 홍콩 Supplementary Character Set, BIG5-HKSCS-2004를 지원했습니다. BIG5-HKSCS 문자 세트 맵이 HKSCS-2008 버전의 표준으로 업데이트되었습니다. 이를 통해 Red Hat Enterprise Linux 고객은 이 표준 버전으로 인코딩된 애플리케이션 처리 텍스트를 작성할 수 있습니다. (BZ#1211823)
memtest86+ 버전 5.01로 다시 시작
memtest86+ 패키지가 업스트림 버전 5.01로 업그레이드되어 이전 버전에 비해 여러 가지 버그 수정 및 개선 사항을 제공합니다. 주요 변경 사항은 다음과 같습니다.
- AMD64 및 Intel 64 CPU에서 최대 2TB의 RAM 지원
- 새로운 Intel 및 AMD CPU 지원 (예: Intel Haswell)
- 실험적인 SMT 지원 최대 32개 코어
자세한 내용은 http://www.memtest.org/#change (BZ#1280352)을 참조하십시오.
mcelog 버전 136으로 변경
mcelog 패키지가 업스트림 버전 136으로 업그레이드되어 이전 버전에 비해 여러 가지 버그 수정 및 개선 사항을 제공합니다. 특히 다양한 5세대 Intel Core 프로세서(Broadwell-DE/SoC, Broadwell-EP, Broadwell-EX, Skylake Client)에 대한 지원이 포함되어 있습니다. (BZ#1336431)
xz 버전 5.2.2로 변경
xz 패키지가 업스트림 버전 5.2.2로 업그레이드되어 여러 최적화 수정 사항, 경쟁 조건, 번역, 이식성 수정 및 이전에 테스트에서만 사용할 수 있는 새로운 안정된 API를 제공합니다. 또한 이 업데이트에서는
--flush-timeout 옵션으로 제어되는 새로운 실험 기능을 도입합니다(기본값:). 압축할 때 이전 플러시 및 더 많은 입력이 차단되기 때문에 제한 시간(밀리초)이 경과하면 더 많은 입력 데이터가 차단되면 모든 보류 중인 입력 데이터가 인코더에서 플러시되고 출력 스트림에서 사용 가능하게 됩니다. 이 기능은 네트워크를 통해 스트리밍되는 데이터를 압축하는 데 xz 유틸리티를 사용하는 경우 유용할 수 있습니다. (BZ#1160193)
recordingstat 가 추가되었습니다. sysstat
이제 sysstat 패키지는 broken
stat 드라이브의 성능을 모니터링하는 데 사용할 수 있는 brokenstat 유틸리티를 제공합니다. (BZ#1332662)
sysstat 이제 더 많은 수의 프로세서 지원
sysstat 패키지는 이제 Red Hat Enterprise Linux 7.3 릴리스 시점의 Linux 커널에서 지원하는 최대 프로세서 수를 지원합니다. 이전에는 sysstat 에서 2048 이상의 프로세서를 처리할 수 없었습니다. (BZ#1258990)
ruby 버전 2.0.0.648로 다시 기반
ruby 패키지가 업스트림 버전 2.0.0.648로 업그레이드되어 여러 가지 버그 및 보안 수정을 제공합니다. 이는 업스트림에서 더 이상 사용되지 않기 때문에
Ruby 2.0.0 의 마지막 업스트림 안정적인 릴리스입니다. 최신 Ruby 버전은 Red Hat Software Collections에서 사용할 수 있습니다. (BZ#1197720)
모호한 보고 워크플로 기능 개선
전체 크래시 보고서 환경 및 고객 사례 생성을 개선하기 위해
abrt 의 문제 보고 워크플로가 향상되었습니다. 개선 사항은 다음과 같습니다.
- 이제
추가 정보화면을 통해 문제가 반복적으로 발생하는지 여부를 선택할 수 있으며 문제를 재현하는 단계를 제공하는 추가 입력 필드가 포함되어 있습니다. - 새로운 보고 워크플로에서
보고된문제가 심각하지 않은 경우 사용해야 하며 Red Hat 지원 팀 지원이 필요하지 않은 경우 사용해야 합니다. - 사용자가 Red Hat에서 출시한 중요한 문제 및 소프트웨어에 대한 경우에만 공개되도록 내부 논리에 새로운 테스트가 추가되었습니다. (BZ#1258482)
ABRT는 특정 프로그램을 코어 덤프 생성에서 제외할 수 있음
이전에는
abrt 에서 블랙리스트로 지정된 프로그램의 충돌을 무시해도 디스크에 기록된 코어 덤프가 생성되지 않았습니다. 이 방법을 사용하면 abrt 에서 불필요한 크래시 덤프를 저장하기 위해 디스크 공간을 사용하지 않고 시스템 관리자에게 충돌을 알릴 수 있었습니다. 그러나 이러한 덤프를 생성하여 나중에 삭제할 때만 이러한 덤프를 생성하는 것은 시스템 리소스가 불필요하게 소비되었습니다. 이번 업데이트에서는 /etc/abrt/plugins/CCpp.conf 구성 파일에 새 구성 옵션을 도입하여 코어 덤프가 생성되지 않는 파일 시스템 경로 패턴의 쉼표로 구분된 목록을 지정할 수 있습니다. (BZ#1277848)
사용자 및 그룹 허용 목록 추가 abrt
이전에는 모든 사용자가 코어 덤프를 생성하고 수집할 수 있었기 때문에 모든 사용자가 악의적으로 다수의 코어 덤프와 시스템 리소스를 생성할 수 있었습니다.
이번 업데이트에서는 abrt 에 허용 목록 기능이 추가되어 특정 사용자 또는 그룹만 코어 덤프를 생성할 수 있습니다. 새로운 AllowedUsers = user1, user2, AllowedGroups = group2, ... 옵션을 사용하여 /etc/abrt/plugins/CCpp.conf 구성 파일의 옵션을 사용하여 코어 덤프 생성 및 컬렉션을 이러한 사용자 또는 그룹으로 제한하거나 모든 사용자 및 그룹의 코어 덤프를 처리하도록 이 옵션을 비워 둡니다. (BZ#1277849)
ABRT 에서 보낸 이메일 형식을 구성할 수 있습니다.
이제
reporter-mailx 유틸리티의 새로운 -F FORMAT_FILE 명령줄 옵션을 사용하여 ABRT 에서 보낸 이메일 형식을 설정할 수 있습니다. 이 옵션을 사용하면 사용자 고유의 형식을 정의할 수 있습니다. F 옵션이 없으면 reporter-mailx 는 중요도에 따라 모든 중요한 요소를 정렬하는 기본 형식을 사용합니다. 형식 지정 파일 형식에 대한 자세한 내용은 reporter-mailx(1) 매뉴얼 페이지를 참조하십시오. (BZ#1281312)
Oracle ACFS가 알려진 파일 시스템에 포함
이전에는 Oracle ASM Cluster File System (ACFS)이
stat 및 tail 유틸리티에 대해 알려진 파일 시스템에 나열되지 않았습니다. 그 결과 tail 유틸리티는 파일 시스템이 인식되지 않았음을 나타내는 오류 메시지를 출력했습니다. ACFS가 알려진 파일 시스템 목록에 추가되었으며 설명된 상황에 오류 메시지가 더 이상 표시되지 않습니다.
또한 업스트림에서 인식하는 다른 파일 시스템은 알려진 파일 시스템 목록에도 추가되었습니다. 즉,
bpf_fs,btrfs_test,configfs,hfs+,ibrix,log fs ,m1fs,nsfs,overlayfs,prl_fs, tracefs. (BZ#1280357)
에 의해 사용된 Octave 3.8에 대한 지원 swig
이전에는
swig 2.0.10에서 생성된 Octave 코드는 변수 및 매크로와 같은 더 이상 사용되지 않는 비트가 포함되어 Octave 3.8에서 작동하지 않았습니다. 이번 업데이트를 통해 swig 는 버전 3.0.5, 3.2.4, 3.4.3, 3.6.4, 3.8.0의 Octave와 함께 작동하는 코드를 생성할 수 있습니다. (BZ#1136487)
sos 클러스터 플러그인은 유형별 플러그인으로 나뉩니다.
sos 패키지의
클러스터 플러그인은 여러 플러그인(cman,dlm,gfs2 및 pacemaker)으로 나뉩니다. 새로운 플러그인 조직에는 두 가지 유형의 클러스터(cman 및 pacemaker)가 있으며 특정 명령을 여러 번 실행할 필요가 없음을 반영합니다. (BZ#1187258)
libvpd 버전 2.2.5로 업데이트
libvpd 패키지가 업스트림 버전 2.2.5로 업데이트되어 이전 버전에 비해 여러 버그 수정 및 개선 사항을 제공합니다. 특히 버퍼 오버플로 및 메모리 할당 유효성 검사를 포함하여 여러 보안 수정 사항을 구현합니다. (BZ#1182031)
pchrt 및 ptaskset 의 man 페이지가 추가되었습니다. python-schedutils
이번 업데이트에서는 python-schedutils 패키지에서 제공하는
pchrt 및 ptaskset 유틸리티의 man 페이지가 추가되었습니다. (BZ#948381)
subscription-manager 클라이언트의 SSL 연결에 대한 소켓 타임아웃 값을 구성할 수 있습니다.
이전에는 인타이틀먼트 서버에 대한 SSL 연결에 대한 소켓 시간 초과 값이 하드 코딩되었습니다. 이번 업데이트를 통해
/etc/rhsm/rhsm.conf 파일에 사용자 정의 SSL 시간 초과 값을 구성할 수 있습니다. 더 큰 SSL 시간 초과를 설정하면 많은 서브스크립션을 포함하는 고가의 작업을 완료하는 데 충분한 시간을 할애할 수 있습니다. (BZ#1346417)
redhat-uep.pem CA 인증서가 python-rhsm-certificates 패키지로 이동
이전에는
/etc/rhsm/ca/redhat-uep.pem 인증 기관(CA) 인증서가 python-rhsm 패키지에 포함되었습니다. 이번 업데이트에서는 이 인증서를 인증서만 제공하는 간소화된 python-rhsm-certificates 패키지로 이동합니다. 결과적으로 컨테이너 이미지는 python-rhsm, 특히 python 패키지에 필요한 모든 패키지 종속성 없이 python-rhsm-certificates 로만 빌드할 수 있습니다. (BZ#1104332)
gfs2-utils 버전 3.1.9로 업데이트
gfs2-utils 패키지가 업스트림 버전 3.1.9로 업데이트되어 다음을 비롯한 여러 개선 사항, 새로운 기능 및 버그 수정을 제공합니다.
- fsck.gfs2는 이제 더 적은 메모리를 사용
- fsck.gfs2의 확장된 속성 및 리소스 그룹 검사를 개선 및 수정
- mkfs.gfs2는 진행 상황을 보고하므로 사용자가 긴 mkfs 작업 중에 활성 상태라고 알 수 있습니다.
- mkfs.gfs2의 -t 옵션은 이제 더 긴 클러스터 이름과 파일 시스템 이름을 허용합니다.
- 이제 udev 도우미 스크립트가 설치되어 정지된 장치를 일시 중단하여 중단을 방지할 수 있습니다.
- de_rahead 및 de_cookie dirent 필드에 대한 지원이 추가되었습니다.
- gfs2_edit savemeta 성능 개선
- 잠금 관련 성능 문제를 분석하는 데 도움이 되도록 glocktop 유틸리티가 추가되었습니다.
- mkfs.gfs2(8) 매뉴얼 페이지가 재작업됨
- rgrplbv 및 loccookie 마운트 옵션이 gfs2(5) 매뉴얼 페이지에 추가되었습니다.
- 트리 외부 빌드 및 테스트 수정 (BZ#1271674)
system-switch-java 버전 1.7로 업데이트
시스템의 기본 Java 툴셋을 선택하는 데 사용하기 쉬운 툴을 제공하는 system-switch-java 패키지가 버전 1.7로 업데이트되었습니다. 최신 JDK 패키지를 지원하도록 새 버전이 다시 작성되었습니다. 주요 개선 사항에는 여러 Java 설치 지원, -debug 패키지 추가 및 JDK 9 지원이 포함됩니다. (BZ#1283904)
특정 Intel 마이크로 아키텍처의 선택적 분기 예측기 최적화
2세대 Xeon Phi 및 3rd generation Atom 마이크로 아키텍처의 분기 예측기는 분기와 분기 대상 간 32비트 오프셋만 지원합니다. 분기와 대상이 4GiB보다 멀리 떨어져 있는 경우 성능이 매우 저하되었습니다.
이번 업데이트를 통해
glibc 는 기본 프로그램과 공유 오브젝트를 LD_PREFER_MAP_32BIT_EXEC 환경 변수가 설정된 경우 주소 공간의 첫 번째 31비트에 매핑하여 설명된 아키텍처의 성능을 향상시킵니다. 이러한 개선으로 인해 주소 공간 레이아웃 무작위화(ASLR)가 감소하므로 기본적으로 활성화되어 있지 않습니다. (BZ#1292018)
AVX 512를 사용한 Intel 하드웨어용 메모리 루틴
이번 업데이트에서는 AVX 512를 사용하여 Intel 하드웨어의 코어 C 라이브러리(glibc)에 최적화된 메모리 복사 루틴을 제공합니다. 이러한 최적화된 루틴은 애플리케이션이 C 라이브러리
memcpy(), memmove(), memset() 함수를 AVX 512 지원 하드웨어에서 사용할 때 자동으로 선택됩니다.
AVX 512 지원 메모리 복사 루틴은 특히 2세대 Xeon Phi 시스템에서 이 기능을 지원하는 최신 Intel 하드웨어에서 최상의 성능을 제공합니다. (BZ#1298526)
더 나은 성능 memset() 루틴
이번 업데이트에서는 Intel Xeon v5 서버 하드웨어의 코어 C 라이브러리
memset() 루틴에 주요 최적화를 제공합니다. AMD64 및 Intel 64 아키텍처용 기존 memset() 루틴은 임시가 아닌 저장소를 광범위하게 사용하며 하드웨어 변형에서 균일한 성능을 제공하지 않습니다. 새로운 memset() 는 Intel Xeon v5 하드웨어를 포함한 하드웨어 변형에서 더 나은 성능을 제공합니다. (BZ#1335286)
glibc에서 --instLangs 옵션 지원
glibc-common 패키지는
glibc 에서 지원하는 모든 로케일에 대한 데이터가 포함된 대규모 로케일 아카이브를 제공합니다. 일반적인 설치는 이러한 로케일의 하위 집합만 필요하며 모든 로케일을 설치하는 것은 부적합합니다. 이번 업데이트를 통해 필요한 로케일만 포함하는 시스템 설치 및 컨테이너 이미지를 생성하여 이미지 크기를 크게 줄일 수 있습니다. (BZ#1296297)
IBM POWER8에 대한 glibc 최적화
이번 업데이트를 통해 POWER8 하드웨어에서 최적의 실행을 위해
glibc 에서 제공하는 모든 라이브러리가 컴파일되었습니다. 64비트 IBM POWER7 및 POWER8 하드웨어에 최적화된 메모리 및 문자열 조작 루틴이 코어 C 라이브러리(glibc)에 추가되었습니다. 이러한 최적화된 루틴은 애플리케이션이 strncat() 또는 strncmp() 와 같은 C 라이브러리 루틴을 사용할 때 자동으로 선택됩니다. 이러한 POWER7 및 POWER8-enabled 루틴은 최신 IBM 하드웨어에서 최상의 성능을 제공합니다. (BZ#1213267, BZ#1183088, BZ#1240351)
IBM z Systems z13에 glibc 최적화
IBM z Systems z13 하드웨어에 최적화된 지원을 제공하도록 코어 C 라이브러리(glibc)가 향상되었습니다.
strncpy() 또는 memcpy() 와 같은 코어 문자열 및 메모리 조작 루틴은 모두 최적화되었습니다. z13 지원 루틴은 최신 IBM 하드웨어에서 최상의 성능을 제공합니다. (BZ#1268008)
sos 패키지에 원본 플러그인 추가
origin 플러그인이 sos 패키지에 추가되었습니다. 플러그인은 OpenShift Origin 및 Atomic Platform 또는 OpenShift Enterprise 3 이상과 같은 관련 제품에 대한 정보를 수집합니다. 이를 통해 사용자는 OpenShift Origin 배포에 대한 정보를 수집할 수 있습니다. (BZ#1246423)
gssproxy 이제 krb5 1.14 지원
GSSAPI 인증 정보 및 GSSAPI 인터포저 플러그인에 대한 액세스를 관리하는 데몬을 제공하는 gssproxy 패키지는 업스트림 버전 0.4.1-10으로 업데이트되었습니다. gssproxy 이제 버전 1.14의 krb5 패키지를 지원합니다. (BZ#1292487)
ABRT reporter-upload 툴에 대한 선택적 SSH 키 파일을 설정할 가능성이 추가되었습니다.
이번 업데이트에서는 ABRT(Automatic Bug Reporting Tool)의
reporter-upload 유틸리티에서 SSH 키를 구성할 수 있는 가능성이 추가되었습니다. 키 파일을 지정하려면 다음 방법 중 하나를 선택합니다.
/etc/libreport/plugins/upload.conf설정 파일의SSHPublicKey및SSHPrivateKey옵션 사용- 공개 및 개인 키에 대해 각각
-b및-r명령줄 옵션 사용 Upload_SSHPublicKey및Upload_SSHPrivateKey환경 변수를 각각 설정합니다.
이러한 옵션이나 변수가 지정되지 않은 경우
reporter-upload 는 사용자의 ~/.ssh/ 디렉터리의 기본 SSH 키를 사용합니다. (BZ#1289513)