이 콘텐츠는 선택한 언어로 제공되지 않습니다.

13. Compiler and Tools


13.1. SystemTap

SystemTap is a tracing and probing tool that allows users to study and monitor the activities of the operating system (particularly, the kernel) in fine detail. It provides information similar to the output of tools like netstat, ps, top, and iostat; however, SystemTap is designed to provide more filtering and analysis options for collected information.
Red Hat Enterprise Linux 6 features SystemTap version 1.1, which introduces many new features and enhancements, including:
  • Improved support for user-space probing.
  • Support for probing C++ programs with native C++ syntax.
  • A more secure script-compile server.
  • The new unprivileged mode, allowing non-root users to use SystemTap.

Important

Unprivileged mode is new and experimental. The stap-server facility on which it relies is undergoing work for security improvements and should be deployed with care on a trustworthy network.

13.2. OProfile

OProfile is a system-wide profiler for Linux systems. The profiling runs transparently in the background and profile data can be collected at any time.
Red Hat Enterprise Linux 6 features version 0.9.5 of OProfile, adding support for new Intel and AMD processors.

13.3. GNU Compiler Collection (GCC)

The GNU Compiler Collection (GCC) includes, among others, C, C++, and Java GNU compilers and related support libraries. Red Hat Enterprise Linux 6 features version 4.4 of GCC, which includes the following features and enhancements:
  • Conformance to version 3.0 of the Open Multi-Processing (OpenMP) application programming interface (API).
  • Additional C++ libraries to utilize OpenMP threads
  • Futher implementations of the next ISO C++ standard draft (C++0x)
  • Introduction of variable tracking assignments to improve debugging using the GNU Project Debugger (GDB) and SystemTap.
More information about the improvements implemented in GCC 4.4 is available from the GCC website.

13.4. GNU C Library (glibc)

The GNU C Library (glibc) packages contain the standard C libraries used by multiple programs on Red Hat Enterprise Linux. These packages contains the standard C and the standard math libraries. Without these two libraries, the Linux system cannot function properly.
Red Hat Enterprise Linux 6 features version 2.11 of glibc, providing many features and enhancements, including:
  • An enhanced dynamic memory allocation (malloc) behaviour enabling higher scalability across many sockets and cores. This is achieved by assigning threads their own memory pools and by avoiding locking in some situations. The amount of additional memory used for the memory pools (if any) can be controlled using the environment variables MALLOC_ARENA_TEST and MALLOC_ARENA_MAX. MALLOC_ARENA_TEST specifies that a test for the number of cores is performed once the number of memory pools reaches this value. MALLOC_ARENA_MAX sets the maximum number of memory pools used, regardless of the number of cores.
  • Improved efficiency when using condition variables (condvars) with priority inheritance (PI) mutual exclusion (mutex) operations by utilizing support in the kernel for PI fast userspace mutexes.
  • Optimized string operations on the x86_64 architecture.
  • The getaddrinfo() function now has support for the Datagram Congestion Control Protocol (DCCP) and the UDP-Lite protocol. Additionally, getaddrinfo() now has the ability to look up IPv4 and IPv6 addresses simultaneously.

13.5. GNU Project debugger (GDB)

The GNU Project debugger (normally referred to as GDB) debugs programs written in C, C++, and other languages by executing them in a controlled fashion, and then printing out their data. Red Hat Enterprise Linux 6 features version 7.0 of GDB.
Python Scripting

This updated version of GDB introduces the new Python API, allowing GDB to be automated using scripts written in the Python Programming Language.

One notable feature of the Python API is the ability to format GDB output (normally referred to as pretty-printing) using Python scripts. Previously, pretty-printing in GDB was configured using a standard set of print settings. The ability to create custom pretty-printer scripts gives the user control of the way GDB displays information for specific applications. Red Hat Enterprise Linux will ship with a complete suite of pretty-printer scripts for the GNU Standard C++ Library (libstdc++).
Enhanced C++ support

Support for the C++ programming language in GDB has been improved. Notable improvements include:

  • Many improvements to expression parsing.
  • Better handling of type names.
  • The need for extraneous quoting has nearly been eliminated
  • "next" and other stepping commands work properly even when the inferior throws an exception.
  • GDB has a new "catch syscall" command. This can be used to stop the inferior whenever it makes a system call.

Independent thread debugging

Thread execution now permits debugging threads individually and independently of each other; enabled by new settings "set target-async" and "set non-stop".

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.