Using Ada-C/C++ Changer as a Converter Automatically convert to C/C++ to reuse or redeploy your Ada code Eliminate the need for a costly and.

Slides:



Advertisements
Similar presentations
MapuSoft Technologies Presentation OS Abstractor, OS Changer, OS PAL and MapuSoft are registered trademarks of MapuSoft Technologies Inc. All other trademarks.
Advertisements

MapuSoft Technologies Presentation OS Abstractor, OS Changer, OS PAL and MapuSoft are registered trademarks of MapuSoft Technologies Inc. All other trademarks.
ROI: Cost of Porting – Manual vs. OS Changer Small Medium Large 10K LOC 100K LOC 1M LOC Manual Porting of Single Application $ 86,500 * $
Using MapuSoft Instead of OS Vendor’s Simulators.
Software Construction
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
Chapter 13 Embedded Systems
Optimizing Linux for Better Real-time Performance Presenter: Raj Johnson.
Language Evaluation Criteria
CS 350 Operating Systems & Programming Languages Ethan Race Oren Rasekh Christopher Roberts Christopher Rogers Anthony Simon Benjamin Ramos.
Wind River VxWorks Presentation
A Cloud is a type of parallel and distributed system consisting of a collection of inter- connected and virtualized computers that are dynamically provisioned.
RTEMS overview W. Eric Norum Introduction RTEMS is a tool designed specifically for real-time embedded systems The RTEMS product is an executive.
02/10/2015 Page 1 R. Theeuws Siemens Atea Filename: CBD_ervaring Werkgroep Component Based Developments Ervaring CBD.
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
The Chameleon Development Environment The Chameleon™ Development Environment Application delivery using Microsoft Excel®
Challenges in Porting Embedded Applications Presenter: Raj Johnson.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Software Research, Inc. Setting the Standard for Software Testing Windows Solution.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Chapter 4 – Threads (Pgs 153 – 174). Threads  A "Basic Unit of CPU Utilization"  A technique that assists in performing parallel computation by setting.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
Challenges in Porting & Abstraction. Getting Locked-In Applications are developed with a particular platform in mind The software is locked to the current.
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
Fiber Based Job Systems Seth England. Preemptive Scheduling Competition for resources Use of synchronization primitives to prevent race conditions in.
Robin R. Macfarlane CEO, RRMac Associates 2015 RRMac Associates, LLC.
FreeRTOS synopsis 김백규 -. FreeRTOS is … Real Time Kernel portable (ARM, AVR, x86, MSP430 etc.) open source ( mini size.
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
MQ Series Cross Platform Dominant Messaging sw – 70% of market
RTOS Lab on your Desktops
Software and Communication Driver, for Multimedia analyzing tools on the CEVA-X Platform. June 2007 Arik Caspi Eyal Gabay.
OS Changer Porting Kit Contents Application Common Operating Environment (AppCOE): An eclipse based IDE for development of C/C++ applications.
Installing Java on a Home machine
Let's talk about Linux and Virtualization in 'vLAMP'
Linux Optimization Kit Many developers need to get a performance increase from their Linux OS Linux OK allows users to achieve higher performance.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Current Generation Hypervisor Type 1 Type 2.
CS427 Multicore Architecture and Parallel Computing
ONYX 12.2.
CSCI-235 Micro-Computer Applications
Compiler Construction (CS-636)
Chapter 18 Maintaining Information Systems
Day 12 Threads.
CCNET Managed Services
Introduction to Operating System (OS)
Introduction Enosis Learning.
Many-core Software Development Platforms
Introduction Enosis Learning.
Installing Java on a Home machine
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Design and Programming
QGen and TQL-1 Qualification
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Yes, we do those languages too.
9.0 EMBEDDED SOFTWARE DEVELOPMENT TOOLS
Enterprise Program Management Office
Software visualization and analysis tool box
An Introduction to Software Architecture
Committed to delivering winning solutions
OS Changer Porting Kit Contents Application Common Operating Environment (AppCOE): An eclipse based IDE for development of C/C++ applications.
MQ Series Cross Platform Dominant Messaging sw – 70% of market
Software Engineering Group, Motorola India Electronics Pvt. Ltd.,
(Computer fundamental Lab)
Java History, Editions, Version Features
OS Simulator Develop and test embedded applications on Windows or Linux host environments Eliminates the need for the original OS and expensive.
Cross-OS Development Platform Contents Application Common Operating Environment (AppCOE): An eclipse based IDE for development of C/C++ applications.
CAD DESK PRIMAVERA PRESENTATION.
Yes, we do those languages too.
Presentation transcript:

Using Ada-C/C++ Changer as a Converter Automatically convert to C/C++ to reuse or redeploy your Ada code Eliminate the need for a costly and tedious code re-write for extensive cost and time savings Error free tool that prevents mistakes made in the error prone task of a manual rewrite Supports conversion of Ada 83, Ada 95 & a subset of Ada 2005 source code to ANSI C/C++ output Preserves Ada comments, files structures and variable names for easier code maintenance

Using Ada-C/C++ Changer as a Converter Keeps “static” trees as symbolic expressions rather than evaluating them to literal values Provides user configurable options to control the format and style of the C/C++ output Provides GNAT compiler compatibility Resultant C/C++ code can be integrated with OS Abstractor for real-time performance, portability and stability Available OS Interfaces OS Abstractor® – pSOS® – µC/OS™ Linux/POSIX – ThreadX® – FreeRTOS™ micro-ITRON – VxWorks® Nucleus® – Windows®

ROI: Cost of Converting – Manual vs. Ada-C/C++ Changer Small Medium Large 20K LOC 150K LOC 300K LOC Manual Conversion of Single Application * $ 381,351 $ 2,860,133 $ 5,720,265 Ada-C/C++ Changer License Fees $ 15,000 $ 60,000 $ 90,000 Est. Labor to use Ada-C/C++ Changer $ 8,000 $ 12,000 $ 16,000 Cost of Converting with Ada-C/C++ Changer $ 23,000 $ 72,000 $ 106,000 Savings (Manual minus Ada-C/C++ Changer) $ 358,351 $ 2,788,133 $ 5,614,265 Return on Investment 1,558 % 3,872 % 5,296 % Source: Software Engineering Institute, Carnagie Mellon, 2008. Bureau of Labor Statistics, May 2006. The Ada application code being converted is self-contained and compatible by an Ada 95 or Ada 83 compiler and on the same hardware/OS platform

Why use Ada-C/C++ Changer Instead of Manually Rewriting? Ada-C/C++ Changer includes a certified compiler (same one offered by Green Hills) front-end, which provides 100% code conversion (i.e. 0% manual code rewrite) Ada-C/C++ Changer offers the guarantee that the application will compile, link and execute successfully and effectively Only minimal testing is required (related to the task of changing a compiler tool) since you are not testing a new set of code Deciding against a manual rewrite means not needing to anticipate technical risks that could come from errors introduced during the effort

Why use Ada-C/C++ Changer Instead of Manually Rewriting? Conversion with Ada-C/C++ Changer is completed much faster than manual conversion, meaning the product can be deployed without many years of delay Ada-C/C++ Changer can handle large applications with multi-millions of LOC The more lines of code converted, the more the savings increase Provides many customization options for converted code Ex. Option to include Ada language exceptions in the converted code Our technical support team has expertise in Ada, C/C++, target tools and OS platforms If Ada-C/C++ Changer needs to be configured for a particular project, we can quickly make the needed changes to save our customers valuable time

Using Ada-C/C++ Changer as a Compiler Compile Ada code using C/C++ tools Support CPU architectures not supported by Ada compilers

Using Ada-C/C++ as a Compiler and Converter UNIFIED Transition Same tools across both old and new platforms Integrated Ada & C/C++ application development SMOOTH Transition Continue Ada development using the same tool that also offers effective conversion from Ada to C/C++ At your own phase: transition module by module; group by group Utilize unique/specialized MapuSoft expertise during transition ECONOMIC Transition Technology that will protect the existing investment while offering assurances for future platform changes Full conversion eliminating unnecessary coding/testing effort Carry through the existing valuable Ada product knowledge Single tool from one vendor across both platforms and languages

OS Abstractor Target Specific Module: Performance Features Not your typical wrapper Provides most of the OS features by itself and does not depend on the OS, except for a few features (ex. priority scheduling, change priority, semaphore, messaging, thread suspend/resume Quick support for a new OS MapuSoft can easily add support to a new commercial or in-house OS, typically in two weeks Process support to any OS Add software based process and shared memory functionality to an OS, even if they do not have those features Advanced process memory allocation scheme Applications can allocate required system heap memory during process creation to ensure that they will always have the required system memory Setting memory limits prevents an application from using up all system memory and impacting others

OS Abstractor Target Specific Module: Performance Features Thread pooling Applications can pool threads to increase platform robustness & performance by eliminating the overhead associated with actual task creation & deletion at run-time Mission Critical Features Applications have the ability to recover from software fatal errors through a soft reset by rolling the stack back to the start of the application API Flexibility Use one or more of the Cross-OS Development Platform Interface(s) Cross-OS Development Interface(s) can also be used within a single or across multiple applications Combine applications written with different OS APIs and run them on one or many OS

OS Abstractor Target Specific Module: Performance Features Zero copy message queues Cross-OS Queue APIs will not introduce data read and copy overhead API and application profiling, plus API optimization Profile applications and the Cross-OS Interface(s) functions on your target Optimize individual Cross-OS Interface functions based on profiler data Scalability specific to your application during code generation AppCOE reads your application to custom generate Interface code that is specific to your application to increase the performance with reduced memory footprint