Presentation is loading. Please wait.

Presentation is loading. Please wait.

Wind River Optimizing Linux Development Chuck Wissore and Patrick Garvey, September 15, 2005 Welcome to Wind River and our presentation on Hardware Assisted.

Similar presentations


Presentation on theme: "Wind River Optimizing Linux Development Chuck Wissore and Patrick Garvey, September 15, 2005 Welcome to Wind River and our presentation on Hardware Assisted."— Presentation transcript:

1 Wind River Optimizing Linux Development Chuck Wissore and Patrick Garvey, September 15, 2005
Welcome to Wind River and our presentation on Hardware Assisted Tools for Linux.

2 Agenda Introduction to Wind River HAT/SAT Products Why Linux?
Linux tools today Wind River Solution Overview Key Features Benefits Value Proposition Wind River Firmware Tools Wind River Work Bench 2.3 Summary/Questions?

3 Wind River Founded 1981, IPO 1993 Market Share Leader
30% of Commercial Market 4x nearest competitor $204M FY 2004 Revenue 4,000+ Customers Running in 300+ Million Devices 1,100+ Employees Worldwide Footprint

4 About Wind River Vertical market focus Network Infrastructure
Aerospace/Defense Automotive Digital Consumer Industrial Operating systems Development tools Professional Services Hardware bring-up-tools, JTAG Emulator, and development boards

5 Partners Silicon Operating Systems Development Boards

6 Wind River HAT/SAT

7 Wind River On Chip Debugging Product Overview
visionCLICK Wind River PROBE 100 MHz JTAG Clock USB 1.x and 2.0 Compliant Bus Powered Wind River ICE Multi-Core Multi-Session Wind River TRACE - 200 MHz TRACE Speed Wind River Workbench Wind River TRACE High-speed real-time trace buffer Filtered Trace Modular Hardware Design Graphical user interface Target versatility Ability to capture up through: 1 Million lines of code.

8 Wind River Compiler Wind River Compiler
Market leading C/C++ compiler (DIAB) Used by silicon vendors to demonstrate new processor capabilities Key Features: Full-spectrum RTOS support Configurable for speed, code footprint and other variables Edison Design Group C++ front-end ANSI compliant Additional optimizations on key architectures PMC-Sierra RM9000 Power PC MIPS Industry’s most flexible complier solution

9 Architectures Supported
PowerPC Motorola 505, 509, 555, 561, 563, 565 603/740/745/750/755 821, 823, 850(variants), 860 (variants), 855, 857, 862 8240/8241/8245 8250/8255/8260/8264/8265/8266 IBM 403 (variants) 405 (variants) (no 405ZGPr) 440GP/GX 603 (variants) 750, 750CX, 750CXe, 750FX MIPS 32/64 Alchemy, Broadcom, NEC, PMC-Sierra, Phillips, Toshiba & IDT Wind River ICE and Wind River Probe ColdFire MCF5202, 5204, 5206, 5206E, 5249, 7272 MCF5307, 5307a Mcf5407 ARM ARM7DI, ARM7TDMI, TRISCENDA7 ARM9TDMI ARM920T ARM940T XScale IXP310/321/80200 PXA210/250 IXP425/2400/2800 AR

10 Reference Design Wind River provides Hardware Reference Designs that provide our customers with a fully functional platform.

11 Reference Design Architectures Supported
PowerPC Motorola Scout PPMC440GP PPMC750/755/7400 PPMC750CX –750CXE PPMC750FX PPMC8245/8241/8245 PPMC8260 SBC405GP FPGA PMC SBC555 SBC7410 SBC8560/40 SBC7447/SBC7457 SBCPOWERQUICC II (MPC8250/60/65/70/80) MdpPRO8xx ARM SBCARM7 Intel XScale PPMC80310 SBCPXA250 MIPS PPMCMIP32 PPMCIDT334 Expansion Boards PCI Expansion Unit PMC/PCI 64-bit Development System AR

12 Why Support Linux? Wind River is the market leader in commercial RTOS and embedded tools market space. Linux is still new to the embedded market space and lacks standard tools and services support. Wind River recognizes the need for industry leading tools and services support. Wind River has the ability to leverage it’s embedded market expertise to bring a best of breed solution to the market.

13 Application Development
Linux Tools Today Limited in feature set and coverage. Limited in feature set and coverage. KGDB - Today GDB - Today User Libraries Dynamic Linked Images Mount File System Optimizations Shared Libraries Applications I/O Hardware Bring-up Configure OS Boot Board Bring-up OS Initialization/ Driver Development Kernel Configuration Application Development Other Application Development Tools

14 Challenges of Linux Development
Most tools require a boot-loader first – Linux relies on a boot-loader for initialization of the Kernel. Why wait for the boot-loader to start kernel/driver development on your custom hardware? What tools are available to support my boot-loader development efforts? Losing control of the KGDB debugger – If the OS crashes the debugger channel crashes as well. Understanding what Linux is doing – How do I know when I am debugging in virtual or physical memory. Tied to basic debugging techniques Use of printf Current tools tied to a specific Linux distribution. Current tools cannot debug both the application and the kernel without having to run two debug agents. Target board

15 Wind River Solution: Provide the ability to bring-up and debug an operating system, such as Linux, that supports virtual memory and memory protection.

16 Wind River’s Solutions to Linux

17 Wind River’s Linux Tools Coverage
User Libraries Dynamic Linked Images Mount File System Optimizations I/O Shared Libraries Applications Hardware Bring-up Boot Configure OS Board Bring-up OS Initialization/ Driver Development Kernel Configuration Application Development Wind River’s Workbench & Wind River ICE or Wind River PROBE Provided by INSMOD support in latest visionCLICK LINUX release

18 Drivers, BSP OS Bring-Up
Tools For Linux The development cycle using embedded Linux is no different than with any other embedded OS. Technical details vary, but the workflow is the same. Linux Firmware Tools Manufacturing Optimization & Test Appl Dev & Debug Drivers, BSP OS Bring-Up HW Bring-Up Wind River Workbench 2.3 for Linux

19 Firmware Tools for Linux

20 Firmware Tools for Linux
Wind River Workbench with WR ICE and WR PROBE JTAG emulators have been enhanced with Linux awareness. Makes it MUCH easier to bring-up Linux on new HW. Can be used with any version of Linux. PPC 405/440 & 824x/6x/7x/8x MIPS4Kc/ec FCS now. Additional arches rolling out through 4Q05. Workbench Ethernet or LPT Wind River ICE or Wind River PROBE JTAG New Hardware

21 What Are The Benefits? Can get Linux running before boot loader or BSP written. Easier to debug drivers/BSP & boot loader if board is “talking to you” Competing solutions require sequential development (time consuming) Total system control, even if Linux crashes. Critical in early stages when stabilizing drivers and BSP Competing tools crash when the kernel crashes Eliminates the virtual memory mystery. Shows where code is in physical and virtual memory. Competing tools just show virtual. Useless for embedded work. Can be used with any Linux distribution.

22 The Products Behind The Solution:
Provide customers with reliable development tools for early access to their CPU’s On Chip Debugging capabilities. Development Boards JTAG/BDM Professional Services Support Backed by years of experience in the embedded industry Debugger

23 Key Features: Wind River Boot Line Wind River Direct Debug:
Hardware Bring-Up without a BSP or Boot Loader. Wind River Direct Debug: Kernel and User Level Debugging Breakpoint Support: Physical Memory Virtual Memory Wind River VMI™ Identifies when you are debugging in physical or virtual (effective) memory.

24 Key Features: JTAG Capabilities (cont’)
A rich set of commands to debug and bring up Linux “CF MMU ENABLE” “CF BL ENABLE” “CF WSPACE xxxxx yyy” “CF TRPEXE NO” “CF VECTOR ZERO” “MMUA xxxxxxxx yyyyyyyy zzzzzzzz”

25 Key Features: JTAG Capabilities (cont’)
“CF MMU ENABLE” Turns on Linux MMU Support “CF BL Enable” Loads the Boot Line Parameters on initialization (“IN”) “CF WSPACE xxxxx yyy” Sets the workspace for the boot line parameters. “CF TRPEXE NO” Stop monitoring exceptions for runtime speeds. “CF VECTOR ZERO” Configure vector table pointer to zero on “IN” “MMUA xxxxxxxx yyyyyyyy zzzzzzzz” Automatically biases the link address (xxxxxxxx) of the download image, and PC to the RAM address (yyyyyyyy), and the mask (zzzzzzzz) determines the nibbles bias nibbles.

26 Key Features: Wind River Boot Line
The Boot Line Utility allows a user to setup the bootline parameters, which are passed to Linux on startup (after the Linux image is downloaded over the JTAG port). Wind River technology that allows you to create Linux Kernel images and directly download them to the target without using a boot loader

27 Key Features: Wind River Direct Debug
Wind River technology that allows the debugging of the Linux kernel and processes running in User mode without the need for an embedded agent OR kernel instrumentation. Supports breakpoints in both physical and virtual memory.

28 Key Features: Wind River VMI™ (Virtual Memory Indicator)
Virtual Memory Indicators enable the developer to identify where the code is executing, virtually and physically. Wind River technology that gives you full visibility: both virtual and physical memory Source level debug that lets you know what the OS is doing and where the OS is running

29 Key Features: Wind River VMI™ (cont’)
Clear indication of the MMU translation mode AND the actual memory translations. Arrow Points Right: Indicating that MMU is turned off, and we are operating in the Physical Address space with one to one mapping. Arrow Points Right: Indicating that MMU is turned off, but the code is compiled and linked to the virtual address space on the left – useful in finding link errors. Arrow Points Left: Indicating that MMU is turned on, and we are operating in the virtual address space. In this case the PC address is the source linked address: 0xC00089C0 While the physical address is 0x000089C0

30 Linux Runtime Shell Output Physical Address Translation
Summary: All of your vital information on your desktop Linux Runtime Shell Output Source Code Display Logical to Physical Address Translation Read/Modify of Virtual Memory

31 Benefits No target agent (GDB or KGDB) required
NO MORE INSTRUMENTATION System Mode debugging even in User Mode COMPLETE CONTROL AT ALL TIMES Simultaneous debug of Kernel and User application SINGLE TARGET CONNECTION FOR EVERYTHING Same bring-up tools for Linux, VxWorks, or your in-house proprietary OS NO MORE SWITCHING TOOLS The same tools can be use not only in design, but in testing as well COMMONALITY

32 Wind River visionCLICK Demo

33 Wind River Workbench 2.3

34 Wind River Workbench VxWorks® 6.0 Linux Wind River Workbench
Tornado visionPROBE II SingleStep SniFF+ 1. Mix a broad range of proven, best in class, embedded development tool capability 2. Combine in a open, extensible, development environment framework with strong third party support 3. Provide common tools for the most popular processors, hosts, and embedded operating systems VxWorks® 6.0 Linux Wind River Workbench

35 Open and Standard The ECLIPSE Model
Eclipse is an open framework and platform for device development tools that leverages open-source licensing and a community of tool developers Eclipse Platform Tools Technology Web Tools Platform Test and Performance Tools Platform 75 Member Organizations rd Party Plug-Ins

36 Eclipse Strategic Developer Member
WindRiver Manages a Project WindRiver Invests millions of dollars every year WindRiver has 10 dedicated engineers contributing to the Eclipse project

37 Eclipse Plug-In Examples
JDT – Java Development Tools PyDev – Python Development environment Editors SlickEdit Studio EclipseWiki editor XMLBuddy (XML Editor) JSEditor (Java Script) Source Code Management ClearCase CVS EclipseUML (visual modeling) Per Eclipse Openness, You can create custom plug ins

38 Graphical User Interface
Wind River Workbench 2.0 Wind River Workbench Graphical User Interface Host Shell Eclipse Framework Project Editor Data Perform Memory Coverage Analysis System Viewer 3rd Party CM Build Source Analyzer Alternate Editor Compiler Debugger 3rd Party Tool Target Agent Connectivity Linux

39 Graphical User Interface
Wind River Workbench 2.2 Wind River Workbench Graphical User Interface Host Shell Eclipse Framework Project Editor System Viewer 3rd Party CM Analysis Data Build Source Analyzer Alternate Editor Memory Compiler Debugger Perform 3rd Party Tool Coverage Target Agent and OCD Connectivity VxWorks Simulator VxWorks Linux Other OS No OS

40 Wind River Workbench 2.3 Eclipse Framework Graphical User Interface
Wind River Linux GNU Tool Chain Analysis Project Editor System Viewer 3rd Party CM Data Build Source Analyzer Memory Alternate Editor Perform Compiler Debugger Coverage 3rd Party Tool Trace Target Agent and On-Chip Debugger Connectivity Wind River Linux Platforms Roll-Your-Own Linux Other Commercial Linux Distributions VxWorks ThreadX Other OS

41 What Are The Benefits? Total system debug.
Competing tools cannot debug apps & drivers at same time. Debug & analyze multiple CPUs at the same time. Understand interactions in a multi-processor system. Develop & debug on Linux & VxWorks at same time, same tool suite. Great for multi-CPU systems that mix both OSs. This is unique. Firmware development & app development in the same tools suite.

42 Project Facility and Build System
Project System Wizards and templates accelerate setup of common project types Import mechanisms for legacy code project files Easy project manipulation via drag and drop Build System Useful default settings to shorten time-to-build Build tools and build specs completely graphically configurable via property sheets for advanced customization File-level build settings, custom link order and multiple build targets for expert setup Command line build support for scripts and nightly updates Integration with custom makefiles to support legacy projects

43 Project Facility and Build System
Project System Wizards and templates accelerate setup of common project types Import mechanisms for legacy code project files Easy project manipulation via drag and drop Build System Useful default settings to shorten time-to-build Build tools and build specs completely graphically configurable via property sheets for advanced customization File-level build settings, custom link order and multiple build targets for expert setup Command line build support for scripts and nightly updates Integration with custom makefiles to support legacy projects

44 Source Analysis Code and Symbol Browsing Problem Solving
Symbol definition lookup and quick source code navigation to reduce learning curve of unfamiliar code Problem Solving Workbench Debugger enhanced with source analysis features solves runtime problems more quickly Powerful Editor Code completion, macro expansion and other productivity features Support for 3rd party editors via Eclipse plug-ins

45 High Capability Debugging
Multiple Context Wind River Debugger View, control and debug multiple: task, process, threads and processors concurrently Rich target agent enablement Single session Kernel & User mode debug via a single agent Task mode and system mode debugging

46 Windsh and Kernel Shell
A command line shell for monitoring and debugging Provides gdb command line of Wind River Workbench debugger Based on the popular VxWorks shell Symbolic debug monitor Work at assembly language level Tcl scripting capability Can be seen as the command line version of the debugger Makes kernel and driver development of Linux as easy as traditional embedded development Kernel shell Provide the famous VxWorks shell into the Linux kernel We would like to here your feedback 

47 Workbench Target Connections
Wind River ICE Wind River Probe Linux KGDB Linux User Mode Agent Target Server (WDB Agent) Linux VxWorks Simulator Instruction Set

48 Wind River System Viewer
- Superior instrumentation - User and kernel instrumentation - Supports triggering which LTT does not have More activity occurring around here Easier event log navigation thanks to radar screen *Here showing BSD/OS events

49 File System Creator Features
GUI based Easily select the few files your system needs out of the thousands of files of a Unix like system Handles special files like link, devices, socket, fifo Automatically analyses and import static and dynamic shared libraries required by selected system or application binaries One click filesystem image build - One click bootable image generation Based on tash restricted shell to prevent trashing host filesystem There is no way to identify all possible dependencies that exists between all the OS files a filesystem creation tool should not attempt to solve the entire problem focus on the most common cases

50 Wind River Workbench 2.3 Demo

51 Questions

52 Wind River Thank You!

53 END


Download ppt "Wind River Optimizing Linux Development Chuck Wissore and Patrick Garvey, September 15, 2005 Welcome to Wind River and our presentation on Hardware Assisted."

Similar presentations


Ads by Google