Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2006 by IBM and Wind River Systems; made available under the EPL v1.0 | 22-March-2006 Martin Oberhuber, Wind River Systems

Similar presentations


Presentation on theme: "© 2006 by IBM and Wind River Systems; made available under the EPL v1.0 | 22-March-2006 Martin Oberhuber, Wind River Systems"— Presentation transcript:

1 © 2006 by IBM and Wind River Systems; made available under the EPL v1.0 | 22-March-2006 Martin Oberhuber, Wind River Systems martin.oberhuber@windriver.com David Dykstal, IBM WebSphere david_dykstal@us.ibm.com DSDP/TM Project Using and Extending the DSDP Target Management Framework

2 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 2 So what is Target Management all about? Remote Computer Systems…  Targets (Locally connected, shared, fielded)  Hosts (Grids, farms, nodes) … and developing software on them  Build, connect, get status  Download, run, debug, test  Upload An Eclipse Project under DSDP since June 2005.

3 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 3 The Ugly Truth: Reality Now  Type in IP addresses and config options  Again and again in each distinct tool  Manually configure JTAG scan chains  Hassle with Register settings and reset options  ftp, telnet, rsh, ssh  Work in two separate environments  With insufficient tooling on the remote system  No tool integrations from different vendors

4 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 4 The Vision You’ve got that new board from Yoyodyne ACME Plug it in… … and it just works like your local desktop computer

5 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 5 The Mission To become the standard tool environment for interacting with remote systems for software development

6 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 6 How do we get there?  Create a Framework for interoperability  Focus on tools for remote (potentially embedded) systems  Data models: standardized hardware descriptions, e.g. multi-core configurations, JTAG scan chain setup, memory layout  Configure and Manage: e.g. target groups, board labs, access restrictions, connection configurations shared in a team  Connection plug-ins: TCP/IP, Tunneling, Serial, JTAG connections – pluggable with fine granularity  Pluggable Actions and Services (Download, Launch, Query status, Auto- detect services, Reboot, Flash utility, Remote console, …)  http://www.eclipse.org/dsdp/tm/ http://www.eclipse.org/dsdp/tm/  Overview, Scope and Use-Cases Document

7 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 7 And who are we, by the way?  CDT and Derivatives: Launches for remote systems  Want to share common target properties between Launches  Bugzilla 65471: Remote System Framework (RSF) code and presentation from EclipseCon 2005  Commercial Debuggers migrating to Eclipse  Want a Target Manager again  Hardware Vendors  Want minimal open plug-ins for their hardware  Eclipse-based commercial Target Managers  Want open interfaces for interoperability  And a Community to grow Logos and trademarks are copyright by their respective owners.

8 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 8 Remote System Explorer  A component that has been shipping for several years in various IBM products  Used for accessing IBM server systems  RSE “8.0” submitted to Eclipse in January 2006  Will become RSE 1.0 after EMO approval  Will form the base of the first DSDP/TM Release in September

9 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 9 Remote Systems Perspective

10 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 10 Pluggable Target System Types

11 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 11 Target System Instances

12 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 12 Subsystems manage resources of a particular kind

13 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 13 Filters select resources dynamically

14 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 14 Resources exposed by the filter

15 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 15 Properties of the selected resource

16 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 16 Table provides alternative view

17 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 17 File Resources can be directly edited

18 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 18 Remote File Systems can be searched

19 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 19 What’s in the box?  Resource Access  Remote files  “dstore” based or FTP  Remote search & archive support  Processes  “dstore” only  Commands & results  “dstore” based or Telnet  Access to Linux, Unix, and Local systems  All within a consistent, extendible framework

20 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 20

21 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 21 Structure - dstore

22 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 22 Extending RSE  Add New System Types  IBM has extended for their systems  Connection properties, wizards, connection schemes, character set conversions, …  Add New Subsystems  For accessing new types of remote resource (loads, memory regions, …)  Add New Actions and Properties for existing remote objects  By system type and/or file type

23 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 23 A New System Type – What’s Involved  Extension points  System Type  Subsystem  Subsystem implementations are assigned to System Types  These can be reused across System Types  System Types are just collections of services supplied by subsystems Example: Using only some of the existing services for a target

24 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 24 <type description="An XYZ System" icon="icons/system-xyz.gif" iconlive="icons/system-xyz-live.gif" id="org.eclipse.rse.examples.xyz" name="XYZ"/>

25 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 25 Causes a new system type to appear Which, in turn, allows it to be instantiated later

26 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 26 <configuration systemtypes="XYZ" name="Files (FTP)" description="Manager for XYZ file system resources." icon="icons/system-files.gif" iconlive="icons/system-files-live.gif" category="files" class="org.eclipse.rse.subsystems.files.ftp.FTPFileSubSystemConfiguration" vendor="XYZ MegaCorp" id="ftp.files"> This class exists, just reuse

27 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 27 Causes this to appear for XYZ systems

28 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 28 This Linux target system shows up with 3 subsystems – using both dstore and FTP Our new XYZ target system shows up with 1 subsystem – using FTP

29 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 29 Subsystems – access to resources  Have a new kind of resource? Add a subsystem!  Extension Point – The subsystem configuration  Subsystems access resources through a service layer  Not required, but a suggested implementation  Useful if you have resources accessible by multiple protocols  Lifecycle  Connecting  Applying filters to resources  Definition persistence and sharing  Subsystem Properties, Filter Definitions, Saved Commands  Done through the SystemRegistry  Pluggable Persistence Managers

30 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 30 The Service “Layer”  Do you have an alternative way to access a resource (like a file) that already has a subsystem?  Just plug in a new service (well, sort of)  No Extension Point for services, instead…  Define a new subsystem configuration to act as a factory for the standard subsystem but connects that subsystem to the new service.  The new subsystem configuration contributed in the usual way  Standard subsystem defines the subsystem/service API  File, Shell, and Process subsystems defined in this manner

31 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 31 Current Packaging

32 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 32 A new implementation – FTP – What did we add?  Plugins  a service  a subsystem  Extension Points  a subsystemConfiguration  Resources and Adapters  A File Resource for FTP Files  An Adapter for this resource  Protocol  Wraps the FTP client library

33 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 33 <configuration systemtypes="Linux;Unix;AIX" name="%Files" description="%FilesDescription" iconlive="icons/full/obj16/systemfileslive_obj.gif" icon="icons/full/obj16/systemfiles_obj.gif" category="files" class="org.eclipse.rse.subsystems.files.ftp.FTPFileSubSystemConfiguration" vendor="IBM Corporation" id="ftp.files"> We reused this before, this time we wrote it

34 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 34 The protocol wrapper

35 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 35 These are the methods that FTPService defines. It implements the IFileService API. This is the largest class of the implementation and wraps the FTP library client to deliver FTPHostFile objects.

36 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 36 The new “factory” for FTP Subsystems

37 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 37 Connects the FileServiceSubSystem to a particular instance of an FTPService

38 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 38 Adapts FTPHostFile to have appropriate UI properties for the RSE Views

39 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 39 Speaking of Adapters…You can reuse RSE Adapters

40 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 40 Directly…

41 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 41 Or Indirectly

42 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 42 RSE for the Device world – what’s different?  Different Resource Types, e.g. Kernel Modules, Semaphores, Message Queues  Register a new Subsystem!  Different communication protocols, e.g. minimal debug agents, hardware debuggers, standard protocols like ssh  Register a new Service for existing Subsystems!  Slow connections  RSE model objects can use Jobs for delayed updates. Each node has control over its update policy! The RSE Model is extremely flexible thanks to Adapters. RSE APIs will be evolved as we go along.

43 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 43 So what’s still missing?  Have a Framework for interoperability  Focus on tools for remote (potentially embedded) systems  Data models: basic PropertySetContainers now, need more structured models, standardized hardware descriptions  Configure and Manage: connection configurations shared in a team, target groups, board labs, access restrictions  Connection plug-ins: TCP/IP, Tunneling, Serial, JTAG connections – pluggable with fine granularity  Pluggable Actions and Services (Download, Query status, Launch, Auto-detect services, Reboot, Flash utility, Remote console, …)

44 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 44 Next Steps  Add an RSE Service layer for the ssh protocol  Files Subsystem and Command subsystem will work immediately  Eclipse Committers can access dev.eclipse.org directly from within Eclipse (File Transfer, Remote Shell)  Provides a nice example for how to add more protocol support  Add a CDT Launch Integration  Polish the APIs

45 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 45 CDT Launch Integration  Will be provided as an RSE Example  Sample will use gdbserver; vendors will need to adapt to their specific debugger communication properties

46 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 46 CDT Launch Integration - API  Fill the Combo:  IHost[] hosts = SystemPlugin.getTheSystemRegistry().getHosts();  Filter by System type or connected status:  hosts[i].getSystemType();  hosts[i].isOffline();  Get or Set Properties:  Every RSE Model Object is a PropertySetContainer  hosts[i].getPropertySet(“gdbserver”).getProperty(“port”);  Create a new connection (lauches the Wizard)  new SystemNewConnectionAction(shell, false, myCombo).run()

47 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 47 CDT Launch Integration – Attach Action

48 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 48 Future: Component-Based Launching (CBL)  A Launch is really a sequence of Actions  Connect, Download, Reset, Run Script  The “Build before Launch” can also be seen as an Action  Allow to contribute actions and compose a Launching “script”  Launch “Scripts” can operate on one or multiple targets  Pre-configured Launches with an UI as we know  Flexible Launches configurable by the user

49 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 49 An FAQ: Where is the border between Target Management and Debugging?  TM provides a framework and “broker” for services to be registered.  Especially on Hardware Debug Connections, a debugger may register services as TM extension (TM on top of debugger)  Or, TM may provide communication channels for debuggers to use (debugger on top of TM; inter-debugger communications)  TM shows the entire target (e.g. all processes), debugger focuses on items of interest  TM does everything before a debug context is available:  Select proper target, check resource availability, reset, download, launch agent, …

50 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 50 Flexible Target Connection Adaptors (Connectors) Link to Processor 1 / Core X using connector channel 1 Link to Processor 1 / Core Y using connector channel 2 Link to Processor 2 using connector channel 3 Supply an interface to communicate with the target system Users are the debug model an utility application like FLASH programmer tool to view OS events … Target System Tool A Tool B Connector plug-in Eclipse IDE Connection Device

51 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 51  Already started  Component-Based Launching  Standardized Hardware Descriptions - SPIRITSPIRIT  Flexible Connector Chains (Target Connection Adapters)  Middle-term goals  Associations between Connection – Project – Build  Auto-detect protocols and services on remote systems  Inter-Debugger Communications  Connection Groups  Shared Board Labs and pluggable access control For Details, see http://wiki.eclipse.org/DSDP/TM/http://wiki.eclipse.org/DSDP/TM/ TM Initiatives Logos and trademarks are copyright by their respective owners.

52 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 52 Target Management Base Architecture Data Models Connectivity Services Remote File system Predefined Elements Remote Process List Actions (Download, Reset, Debug, Flash, …) FiltersViews Target Connection Adaptors (aka Connectors) PersistencyProfilesTeam Sharing Property PagesWizardsAutodetect Remote Shell Launch Sequencer (CBL) Connection Configuration (Plumbing) Predefined connection types (connector chains) Target DefinitionsConnection GroupsAccess Control Reusable Widgets Legend: Existing components in RSE, Design TBD, Analysis TBD, Extension Point, Fixed implementation

53 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 53 TM and other Eclipse Projects  Eclipse Communication Framework (ECF)  Investigating for plugging in new protocols  Discovery / Autodetect  We will provide an RSE Example for ECF-based file sharing  Projects that do some sort of connection lists  Test and Performance Tools Platform (TPTP)  Web Tools Platform (WTP)  Platform Team Extras (FTP, WebDAV)  …

54 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 54 Summary: Plans and Timings First Release (September 2006, on Eclipse 3.2)  RSE – Release 1.0 (Milestones available earlier)  CDT Remote Launch Integration – Release 1.0  Target Definition & Selection, “Remote Debug” Launch configuration Milestones 2006-2007  Standards based target connections (FTP, Telnet, ssh, ECF)  Component-Based Launching (CBL)  “Download” and “Run” Launch actions based on above services  Open Connectors for HW Debuggers (Preconfigured Connection Types)  Connection Model for HW Debugging (complex connector setup) Future  Connector plumbing algorithm  Framework for autodetect  Adapters for Target access control (shared board labs)  SSH tunneling connector

55 Using and Extending the DSDP Target Management Framework | © 2006 by IBM and Wind River Systems all content except logos and trademarks is made available under the EPL v1.0 55 Getting Involved  RSE is very flexible, with good basic abstractions  An option for your Project?  RSE is a well established product  Still, a lot of community feedback will be needed as we are freezing public APIs (Milestone 3: June 30 – API freeze)  Join the dsdp-tm-dev mailing list - http://www.eclipse.org/dsdp/tmhttp://www.eclipse.org/dsdp/tm  Q & A – Join the DSDP BOF session


Download ppt "© 2006 by IBM and Wind River Systems; made available under the EPL v1.0 | 22-March-2006 Martin Oberhuber, Wind River Systems"

Similar presentations


Ads by Google