Green Hills Software

From Wikipedia, the free encyclopedia

Green Hils Software lInc.
Green Hills Software logo
Type Private
Founded 1982
Headquarters Santa Barbara, California
Key people Dan O'Dowd, Founder and President
Slogan The technology leader in device software optimization DSO
Website www.ghs.com

Green Hills Software, headquartered in Santa Barbara, California, USA, is a company that markets operating systems and development tools for embedded systems. The company was founded in 1982 by Dan O'Dowd and Carl Rosenberg, and has been profitable every year since it began.[1]

Contents

[edit] Products

[edit] Real-time operating systems (RTOS)

  • INTEGRITY is a royalty-free POSIX-certified real-time operating system. INTEGRITY is intended for use in embedded systems requiring maximum reliability, maximum availability, and fault tolerance.[2]
  • INTEGRITY-178B is an ARINC-653-1–compliant, securely partitioned real-time operating system that targets demanding, safety-critical applications containing multiple programs with different levels of safety criticality, all executing on a single processor.[3]
  • velOSity, a royalty-free real-time operating system for optimal resource availability with hardware platforms without a full memory management unit.[4]
  • µ-velOSity, a royalty-free real-time microkernel for resource-constrained devices.[5]

[edit] Optimizing compilers

Green Hills' optimizing compilers target a variety of 32-bit and 64-bit platforms, including ARC, ARM, Blackfin, ColdFire, MIPS, PowerPC, SuperH, StarCore, x86, v800, and XScale.[6] All Green Hills compilers consist of a language-specific front end, a global optimizer shared by all the compilers, and a target-specific optimizer and code generator.

Green Hills optimizing C compilers support five major dialects of the C programming language:[7]

  • Strict ANSI: Strict ANSI mode is 100% compliant with the ANSI X3.159-1989 standard with all of the restrictions enforced.
  • Permissive ANSI: All of the features of the ANSI standard are enforced, without some of the restrictions.
  • Transition Mode: This mode allows existing programs written in K&R C to make use of certain features of ANSI C. In particular, function prototypes and the keywords const, signed, and volatile are supported, along with all of the features of K+R mode.
  • MISRA C: Provides automated enforcement of MISRA C programming guidelines.
  • K+R - For C source files, interpret the source code according to the first edition of The C Programming Language, and provide compatibility with Bell Labs' original Portable C Compiler.
  • GNU C: Many GNU C language extensions are optionally accepted.

[edit] Integrated development environment (IDE)

  • MULTI is a multiplatform IDE for C, C++, EC++, and Ada able to run on Windows, Linux, HP-UX and Solaris. Aimed at embedded engineers, it is tightly coupled with Green Hills' optimizing compilers and hardware debug probes. Additional features include an integrated CVS browser, a diff viewer, automatic code completion, graphical class hierarchy generators, run-time error checking, integration with Eclipse, and scriptable breakpoints.[8]
  • TimeMachine[9] is a set of tools for optimizing and debugging C and C++ software. TimeMachine records every instruction executed on a CPU, archives the instructions, and allows the developer to review the executed instructions. (In other words, the debugger can trace or single-step "backwards in time" as well as forwards; hence the name of the product.)[10] On embedded processors, TimeMachine is implemented using a trace port on the CPU.[11] Trace ports are built directly on the processor die and thus have virtually no performance penalties, allowing TimeMachine to collect debug information at full speed.

    TimeMachine is useful for analyzing race conditions and other Heisenbugs. The ability to replay instruction sequences at a later time is also useful for embedded engineers who cannot use breakpoints because halting the program is impossible (for example, when debugging the flight controller on an aircraft).[12]

  • TraceEdge is a trace collector that allows the programmer to use TimeMachine on microprocessors without a built-in trace port.[13]

[edit] Processor probes and hardware debug devices

  • The Green Hills Probe is a hardware debug probe for load, control, debug, and test on a target system without the need for prior board initialization. Through a JTAG or BDM test port, the probe can debug and control the core state (such as CPU internal registers) as well as the system state (external RAM and flash memory).[14]
  • The SuperTrace Probe combines the capabilities of the Green Hills Probe with a trace collection system that non-intrusively captures up to one gigabyte of trace data in real-time at processor speeds up to 1.2 GHz. [15]
  • The Slingshot debug device is a low-cost, high-performance debug probe with a USB interface.[16]

[edit] Competitors

Competitors of Green Hills include Wind River Systems (makers of VxWorks), QNX Inc. (makers of the QNX Neutrino system), LynuxWorks (makers of the LynxOS RTOS), and Mentor Graphics (makers of Nucleus RTOS). Lesser competitors include the real-time and embedded product lines of Microsoft (largely Windows CE and Windows NT Embedded) and various operating systems based on Linux made by MontaVista, Timesys and others.

[edit] External links