By Ludovic Brenta.
Ada-Belgium General Assembly, 2007-06-12.
Copyright (c) 2007 Barco NV.
Permission is granted to make and distribute verbatim copies of this document. Modification is not allowed.
http://www.cs.kuleuven.ac.be/~dirk/ada-belgium/events/07/070612-abga-event.html
In this Case Study read about Mistral’s expertise in designing a flexible and easily upgrade-able Video recording & processing solution with high resolution and frame rate for defense and aerospace applications.
In this Case Study read about Mistral’s expertise in designing a flexible and easily upgrade-able Video recording & processing solution with high resolution and frame rate for defense and aerospace applications.
ScicomP 2015 presentation discussing best practices for debugging CUDA and OpenACC applications with a case study on our collaboration with LLNL to bring debugging to the OpenPOWER stack and OMPT.
BKK16-400A LuvOS and ACPI Compliance TestingLinaro
ARM server hardware will be shipping in 2016. An incredible amount of work has been done to get this far -- defining and implementing industry standards used by servers, development and testing of SoCs, and all sorts of Linux kernel work. So, how do we make sure we meet all these industry standards?
To a great extent, we've relied on magical thinking so far. That works, but only for so long. LuvOS and FWTS were created in order to catch many of the problems users have found; in this presentation, we describe how we have started extending FWTS to check for standards compliance, specifically ACPI and the SBBR, and how we can use LuvOS to run FWTS and other test suites so that we can rely on hard data, and not just wishful thinking.
Rapid control prototyping system for power electronicsimperix
Presentation of our fully-programmable control systems, dedicated to rapid control prototyping in power electronics. Our digital controllers can be easily programmed using Matlab Simulink and Plexim PLECS. They are tailored for use as power converter controllers in teaching and research environments.
LAS16-300: Mini Conference 2 Cortex-M Software - Device ConfigurationLinaro
LAS16-300: Mini Conference 2 RTOS-Zephyr - Device Configuration
Speakers: Andy Gross
Date: September 28, 2016
★ Session Description ★
SoC Vendors, board vendors, software middle layers, scripting languages, etc all need to have access to system configuration information (pin muxes, what sensors are on a system, what amount of memory, flash, etc, etc). We need a means to convey this in a vendor neutral mechanism but also one that is friendly for Cortex-M/constrained footprint devices. This session will be to discuss the topic, how its done today, what kinda tooling might exist from different vendors, what we could utilize (device tree) and what issues that creates.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-300
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-300/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
B.E/Engineer with 9.9yr experience in Kernel, Device Driver and Embedded System Software Design and Development in Linux, Android, RTOS(QNX) and Windows
MIPI DevCon 2016: How to Use the VESA Display Stream Compression (DSC) Standa...MIPI Alliance
The VESA Display Stream Compression (DSC) standard is a visually lossless video compression algorithm that decreases transmission bandwidth by up to 3X, while lowering power and reducing EMI. The standard has been adopted by leading suppliers of semiconductors for use in mobiles, tablets, in-car video, and DTV applications in order to achieve higher resolution displays. This presentation by Hardent's Alain Legault provides background information about DSC and the role it plays in today’s interface IP ecosystem when combined with MIPI® DSI, USB Type-C™, DisplayPort™ and Embedded DisplayPort™, and HDMI™ IPs. Several use cases are discussed, and practical information on how to successfully integrate DSC in semiconductor designs is also provided.
Cassidian’s Barracuda technology demonstrator UAV flight tests advanced technologies in realistic conditions
The System
Two Acra KAM-500 data acquisition units (DAUs), equipped with COTS modules used to monitor various avionics buses and analog sensors, in a master slave configuration
The Results
Successful completion of a UAV technology demonstrator flight test campaign
Development of a flexible, low-cost DAS tightly integrated with in-house systems
Reliable accurate data delivered on time to the onboard and ground flight test systems
More details available at www.cwc-ae.com.
ScicomP 2015 presentation discussing best practices for debugging CUDA and OpenACC applications with a case study on our collaboration with LLNL to bring debugging to the OpenPOWER stack and OMPT.
BKK16-400A LuvOS and ACPI Compliance TestingLinaro
ARM server hardware will be shipping in 2016. An incredible amount of work has been done to get this far -- defining and implementing industry standards used by servers, development and testing of SoCs, and all sorts of Linux kernel work. So, how do we make sure we meet all these industry standards?
To a great extent, we've relied on magical thinking so far. That works, but only for so long. LuvOS and FWTS were created in order to catch many of the problems users have found; in this presentation, we describe how we have started extending FWTS to check for standards compliance, specifically ACPI and the SBBR, and how we can use LuvOS to run FWTS and other test suites so that we can rely on hard data, and not just wishful thinking.
Rapid control prototyping system for power electronicsimperix
Presentation of our fully-programmable control systems, dedicated to rapid control prototyping in power electronics. Our digital controllers can be easily programmed using Matlab Simulink and Plexim PLECS. They are tailored for use as power converter controllers in teaching and research environments.
LAS16-300: Mini Conference 2 Cortex-M Software - Device ConfigurationLinaro
LAS16-300: Mini Conference 2 RTOS-Zephyr - Device Configuration
Speakers: Andy Gross
Date: September 28, 2016
★ Session Description ★
SoC Vendors, board vendors, software middle layers, scripting languages, etc all need to have access to system configuration information (pin muxes, what sensors are on a system, what amount of memory, flash, etc, etc). We need a means to convey this in a vendor neutral mechanism but also one that is friendly for Cortex-M/constrained footprint devices. This session will be to discuss the topic, how its done today, what kinda tooling might exist from different vendors, what we could utilize (device tree) and what issues that creates.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-300
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-300/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
B.E/Engineer with 9.9yr experience in Kernel, Device Driver and Embedded System Software Design and Development in Linux, Android, RTOS(QNX) and Windows
MIPI DevCon 2016: How to Use the VESA Display Stream Compression (DSC) Standa...MIPI Alliance
The VESA Display Stream Compression (DSC) standard is a visually lossless video compression algorithm that decreases transmission bandwidth by up to 3X, while lowering power and reducing EMI. The standard has been adopted by leading suppliers of semiconductors for use in mobiles, tablets, in-car video, and DTV applications in order to achieve higher resolution displays. This presentation by Hardent's Alain Legault provides background information about DSC and the role it plays in today’s interface IP ecosystem when combined with MIPI® DSI, USB Type-C™, DisplayPort™ and Embedded DisplayPort™, and HDMI™ IPs. Several use cases are discussed, and practical information on how to successfully integrate DSC in semiconductor designs is also provided.
Cassidian’s Barracuda technology demonstrator UAV flight tests advanced technologies in realistic conditions
The System
Two Acra KAM-500 data acquisition units (DAUs), equipped with COTS modules used to monitor various avionics buses and analog sensors, in a master slave configuration
The Results
Successful completion of a UAV technology demonstrator flight test campaign
Development of a flexible, low-cost DAS tightly integrated with in-house systems
Reliable accurate data delivered on time to the onboard and ground flight test systems
More details available at www.cwc-ae.com.
At eInfochips, our deep technology expertise in Board Design and Development, Prototype Development, Testing and Certification and Reengineering sets us apart from our competitors. With 9 Reference Designs, 10 Design IPs, 11 Evaluation Modules and 30 Verification IPs, we have a 132 step checklist for production on second spin.
From design to certification, eInfochips have developed solutions across aerospace and military programs with expertise on processes including DO-178B, DO-254, and DO-160. This presentation showcases our expertise and respective engagements in the Avionics Industry
Curtiss-Wright has a long history with its roots dating back to the Wright brothers' first flight in 1903 and continues that path of innovation and advanced engineering, applying that expertise to mission critical applications in aerospace, naval and land markets. The Avionics & Electronics division (CWC-AE) invests heavily in research and development to ensure it maintains the technology leadership required to deliver high performance COTS and custom engineered products to the aerospace market. CWC-AE has over two decades experience in developing FTI solutions including data acquisition, Ethernet, recording and real-time ground station. Our customers include all of the major aerospace prime contractors and test agencies with products supplied to over 300 platforms in 40 countries worldwide.
For more details visit www.cwc-ae.com
In order to enable a stable ecosystem of partners for IoT development and to support various domains, ARM has introduced its approved design partner program for addressing technological challenges and to enable faster time-to-market for their customers.
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...Christopher Diamantopoulos
This implemented DSP system utilizes TCP socket communication. Upon message reception, it decides the appropriate process to be executed based on cases which can be categorized as follows:
1) image capture
2) image transfer
3) image processing
4) sensor calibration
A user-friendly MATLAB GUI, named DIPeth, facilitates the system's control.
xmobots at the Scade User Group Conference 2013Ansys
Xmbots develops UAVs for civilians within a number of markets, including agriculture, environmental, security and energy. The Brazilian-based company must comply with aviation certification standards, like DO-178 when developing UAVs for the Brazilian market. This is why they chose to use SCADE as part of their development process. Their development cycle went from 2 years for an entirely hand-codded application to 6 months with SCADE
The IoT is becoming extremely popular keyword in the industries while there are many different interpretations or various definitions. However, one common requirement is that it requires many Sensor devices connected to Linux devices. The user space drivers for GPIO, I2C/SPI and UART sensors in the past were implemented separately from scratch delicately for each product. This will cause significant challenge of software engineering overhead while GPIO, I2C/SPI and UART sensors are dramatically increasing which have to be supported. The IoTDK is one of the library to provide portability of sensors' driver to solve the situation.
The talk will includes guide of IoTDK and 96Boards and tutorial of programing I2C and GPIO devices. Targeted audiences are who are interested in IoT sensors or who would like to move from Arduino and Raspberry Pi to modern ARM CPU effectively.
This presentation was delivered at LinuxCon Japan 2016 by Akira Tsukamoto.
Between Cocoa and Cocoa Touch: A Comparative Introductionlukhnos
Lukhnos gives a talk at a CocoaHeads Taipei talk on January 22, 2009. He talks about the common traits of Cocoa and Cocoa Touch and differences between the two, and shares some thoughts of a developer that does both Mac and iPhone software development.
Presented by Brian Gupta (brian.gupta@brandorr.com) and Nathan Freitas (nathan@olivercoady.com)
Learn more at http://tinyurl.com/androidfaq
Android is a fully integrated and open source bundle of software significantly lowers the current costs of developing mobile devices (currently runs on a cellphone (the HTC Dream/T-Mobile G1), and a number of unofficial "ports". It consists of an operating system, middleware, a user-friendly interface and powerful applications.
The talk will start with a review of the internal architecture of the Android platform, breaking down the various components, and examine how they work. Then we will review the latest status of the open source project, including how to get and build the source code, and how to get involved.
POLYTEDA LLC, a provider of semiconductor design software and PV-services announced the general availability of PowerDRC/LVS version 2.2.
This release is dedicated to delivering fill layer generation for multi-CPU mode, new KLayout integration functionality and other significant improvements for multi-CPU mode
This presentation, delivered by Aling Wu, AAEON & Sebastian Borchers, Wahtari, was the forth presentation of the Implementing AI: Vision Systems Webinar.
The next generation of GPU APIs for Game EnginesPooya Eimandar
Demonstrate about new pipeline of GPU APIs for developing real time game engine.
Developing for DirectX12, Vulkan or Metal requires a redesign of the game engine. Developers can achieve key benefits like reduced power consumption and optimized CPU and GPU, multi-threading on multiple GPU devices.
Final Year Projects, Final Year Projects in Chennai, Software Projects, Embedded Projects, Microcontrollers Projects, DSP Projects, VLSI Projects, Matlab Projects, Java Projects, .NET Projects, IEEE Projects, IEEE 2009 Projects, IEEE 2009 Projects, Software, IEEE 2009 Projects, Embedded, Software IEEE 2009 Projects, Embedded IEEE 2009 Projects, Final Year Project Titles, Final Year Project Reports, Final Year Project Review, Robotics Projects, Mechanical Projects, Electrical Projects, Power Electronics Projects, Power System Projects, Model Projects, Java Projects, J2EE Projects, Engineering Projects, Student Projects, Engineering College Projects, MCA Projects, BE Projects, BTech Projects, ME Projects, MTech Projects, Wireless Networks Projects, Network Security Projects, Networking Projects, final year projects, ieee projects, student projects, college projects, ieee projects in chennai, java projects, software ieee projects, embedded ieee projects, "ieee2009projects", "final year projects", "ieee projects", "Engineering Projects", "Final Year Projects in Chennai", "Final year Projects at Chennai"
Ast2Cfg - A Framework for CFG-Based Analysis and Visualisation of Ada ProgramsGneuromante canalada.org
Georg Kienesberger - Vienna University of Technology
FOSDEM’09
Free and Open Source Software Developers’ European Meeting
7-8 February 2009 - Brussels, Belgium
These slides are licensed under a Creative Commons Attribution-Share Alike 3.0 Austria License. http://creativecommons.org
This presentation belongs to the course "Developing Software that Matters". This course is being given by Franco Gasperoni to the second year students of the ENST in Paris. Distributed under the GFDL.
These are the condensed slides if you have to do the presentatin in 3 hours.
https://libre.adacore.com/Software_Matters/
This is the second presentation of the course "Developing Software that Matters". This course is being given by Franco Gasperoni to the second year students of the ENST in Paris. Distributed under the GFDL
Author: ACT Europe.
License: GFDL
Slides objectives:
Help you build software that are more:
• Dependable
• Adaptable
• Fun to develop
Show problems & pitfalls in
• Functionality-oriented C-derived languages
• C, C++, Java • Object-oriented
• Structural problems
Presentation under the GPL license by Ludovic Brenta: "I originally wrote these slides for a 40-minute "introduction to Ada"
that I gave at the Libre Software Meeting in Bordeaux in 2004. I made
sure these slides were suitable for reuse.
Their purpose is not to teach Ada; this is impossible to do in just 40
minutes. Instead, they try to give an overview of the main features
of Ada and provide pointers to further information."
Introduction to the Ada support available in Debian GNU/Linux by Ludovic Brenta the Ada maintainer in Debian.
License: GPL.
This presentation is free software; you can redistribute it and modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
20240605 QFM017 Machine Intelligence Reading List May 2024
Ada at Barco avionics
1. Ada at Barco avionics
Ludovic Brenta
Ada-Belgium General Assembly, 2007-06-12
Copyright (c) 2007 Barco NV.
Permission is granted to make and distribute verbatim copies of this document. Modification is not allowed.
2. Barco Avionics
• One of the seven divisions of Barco NV
• Established in 1998
• Growing fast
• We are hiring!
9. What's so special about avionics
• Certification requirements
– We obey the civilian DO-178B recommendations
– or the customer's military standard if applicable
• Long life-times
– Development of an aircraft: 8-10 years
– In-flight service: 30-50 years
– Avionics cycles can be shorter because of upgrades
• Hardware constraints
• Typical development schedule
– Development, testing and certification: 2-3 years
– Maintenance: 20+ years
– (our first products are still being maintained)
– We have contractual obligations to keep an inventory
of spare parts
10. What we do
• Design and manufacture processor and other boards
– using COTS or custom-made components
– factory in Poperinge, also serves rest of Barco
• Design and manufacture power supplies
– the power supply in an aircraft is very unpredictable
– but the electronics requires very reliable supply
• Design keyboards and other mechanical parts
– subcontractors make the keyboards, LCDs, cases etc.
• Design and assemble the quot;optical stackquot;:
– LCD, backlights (lamp and LEDs), special glass panels
• Design, implement and test the software
– Firmware (quot;boot softwarequot;)
– Application software
• Assemble the units in Kortrijk
• Design and implement the testing procedures
– Vibration, electric static discharge, temperature,
moisture, Hightly-Accelerated Life Testing, etc.
11. Control Display and Management Units
• A dumb text-only terminal
– Only uppercase characters
(large and small)
– With 8 glorious colours!
• Linked to several on-board
computers
– (hence quot;multi-purposequot;)
– flight management
computer
– mission computer
– etc.
• Uses either ARINC 739 or
MIL-STD-1553 buses
12. Internal architecture of CDMS (1994)
• First generation (1994)
– 64-bit RISC microcontroller, 1024
instructions max
– Electroluminescent display (not LCD)
– Monochrome (amber)
– Programed in assembly language
13. Internal architecture of CDMS (1998)
• Second generation (1998)
– MPC68360 quot;QUICCquot; processor (68000 core, 25 MHz)
– 512 kb RAM, 512 kb Flash
– Quarter-VGA (320x240) LCD
– Programmed in Ada 83 with CSMART (Certifiable SMall Ada Run-
Time) from Alsys
– Separate ARINC board
with XScale µcontroller
– Separate keyboard and
display with XScale µc
14. Internal architecture of CDMS (2007)
• Third generation (2007)
– PowerQUICC II processor
• PowerPC 603e core, 16+16k cache, 450
MHz
– 256 Mb RAM, 512 Mb Flash
– Full VGA display (640x480)
– Video capable
– On-board ARINC FPGA
(programmed in VHDL)
– Programmed in Ada 95, pragma
No_Run_Time
15. Multi-Function Displays
• Smart graphical terminal
• Connected via ARINC 429 or MIL-STD-1553
buses to multiple computers
– Air Data Computer (airspeed, pressure
altitude, etc.)
– Global Positioning System
– Inertial Reference System
– Radio altimeter
– Autopilot
– Navigation computer (VOR, DME, ILS, etc.)
– Weather radar
– Other subsystems and sensors: engines, fuel,
etc.
• Various push button and rotating knobs on
all four sides
– Depending on customer, of course
20. Internal architecture of Multi-Function
Displays
• Symbol Generator (2002)
– PowerQUICC
• PowerPC core, 16+16k cache, 100 MHz
– 32 Mb RAM, 32 Mb Flash
– Programmed in Ada 95 with Minimal Ada Run-time
Kernel (MARK, from Rational Apex)
• Symbol Generator II (2006)
– Mostly identical to third generation of CDMS
– PowerQUICC II
• PowerPC 603e core, 16+16k cache, 450 MHz
– Optional PowerPC G3 (MPC755)
• 32+32k cache, 1 Mb L2 external cache, 400 MHz
– 256 Mb RAM, 512 Mb Flash (more in the future)
– Programmed in Ada 95 with pragma No_Run_Time
– Uses a COTS real-time operating system
21. Trends in avionics displays
• The displays' processor boards are ever
more powerful
• Goal: eliminate physical computers
from the aircraft, run their software
inside the display
– (autopilot, flight management sytem,
etc.)
–Challenges:
• introduce multitasking into the display
• logical partitioning between applications
• hard real-time requirements, different for each
app
• certification requirements, different for each
app
• communications between apps using shared
memory
22. MOSART
• Modular Open Systems ARchiTecture
– An API we build our apps on
– We also offer it to customers who want to write their
own apps
– Provides device drivers and built-in tests for all
components of the display
23. History of Ada at Barco (1)
• 1986 - Barco decides to enter the avionics market
– First product: a CRT video display
• 1994 – First product with embedded software
– CDMS programmed in assembly language with 1024
instructions
– No software or hardware engineers - just quot;engineersquot;
• 1998 – First Ada training
– Only two people trained: the senior quot;engineersquot;
– First internal tool (native) using ObjectAda
• Separation into hardware and software teams
– Hire a software development manager
– Has experience with Ada in nuclear simulation
– First embedded project uses C-Smart, Alsys Ada (83)
and Rational Apex
– Introduces UML (later abandoned)
• 2001 - Ada 83 coding standard
– Written by a consultant from KU Leuven
24. History of Ada at Barco (2)
• 2004 - Start of Mosart development
– Language question revisited
– Stay with Ada due to inertia
– Provide a C binding to Mosart for customers
• 2005 - Ada 95 coding standard
• 2006 - Second wave of Ada training
– Ada Basics by yours truly
• May 2006: 2 new hires + 1 C developer
• January 2007: 1 new hire
– Ada Advanced by Adalog
• September 2006: 11 developers
– Contents tailored for avionics
25. DO-178B certification (1)
• DO-178B: quot;Software Considerations in Airborne
Systems and Equipment Certificationquot;
• Defines 5 levels of criticality depending on the
consequences of a failure
– Level A: catastrophic (aircraft crashes)
– Level B: hazardous (aircraft flies but is crippled)
– Level C: serious
– Level D: pilots are annoyed
– Level E: passengers are annoyed
26. DO-178B certification (2)
• Certification requires three quot;stacksquot; of documents:
– With traceability between items in each document
System requirements Verification of System requirements
Testing procedures Software requirements Verification of Software requirements
Verification of Software design Verification of Software design
testing procedures
Verification of Low-level requirements
Low-level requirements
Results of testing
procedures
Source text Verification of source text
Object code Verification of object code
27. DO-178B certification (3)
• Additional documents required for certification:
– Software development procedure
– Design standard
– Coding standard
– Verification that the software development procedure
has been followed
• Waivers in case of deviations
– Verification that the design standard has been
followed
• Waivers in case of deviations
– Verification that the coding standard has been
followed
• Waivers in case of deviations
28. DO-178B certification (4)
• Level A: full stack required
– In particular: traceability between source text and
object code
• Requires support from the compiler
• Main concern of the coding standard
– With independence
• i.e. the person who verifies is not the person who writes
• Level B: only down to source code
– Object code not verified
– With independence
• Level C: only down to source code
– Independence not required
29. Coding standard: why (1)
• We are required to have one, per DO-178B
• Uniformity of source text
• Portability
• Maintainability
• Avoid dangerous constructs
– Infinite loops
– Dynamic memory allocation and deallocation
– Aliasing
• Allow dangerous constructs (!)
– Low-level access to hardware
– Memory-mapped devices
– Machine code insertions
30. Coding standard: why (2)
• Make it easy to test the software
– All subprograms and package variables must be
declared in spec
• (except instances of Ada.Unchecked_Conversion)
– Unit tests are child packages
• Help trace source text to object code
– Be aware of quot;hiddenquot; object code
• Range checks
• Access checks
• Tag checks
• Exception propagation
• Functions returning objects of unconstrained types
• Secondary stack
• Variant records
• Tags and dynamic dispatching
• Changes of representation during type conversions
• etc.
– Reduce the amount of quot;hiddenquot; object code
31. Coding standard: how
• For each language feature:
– Usage is allowed: no problem
– Usage is allowed with documentation:
• Comments required in source text
• Justification required in source text or design document
– Usage is disallowed:
• No excuses accepted
• The rules depend on the criticality level
– Level A: quot;highquot; - traceability to object code req'd
– Levels B .. D: quot;mediumquot;
– Level E: quot;lowquot; - everything except goto is allowed
32. Coding standard: examples (1)
• Functions returning objects of unconstrained types:
– Level A .. C: disallowed; levels D .. E: allowed with doc
• General access types
– Disallowed, except
System.Address_To_Access_Conversions
– Consequence: no silent aliasing
• Anonymous access types
– Disallowed: they introduce aliasing
• Tagged types: allowed
• Discriminants with default values
– Require Size representation clause: size may not
change
• Compiler-dependent packages disallowed
– Except System.Machine_Code
33. Coding standard: examples (2)
• Allow low-level programming features with
documentation:
– Overlays
– System.Address_To_Access_Conversions
– Machine code insertions
– pragma Volatile, pragma Atomic
– Full rep clauses required (pragma Pack not sufficient)
– pragma Import, pragma Export
34. Coding standard: examples (3)
• Dynamic dispatching
– Not yet widely accepted in avionics
– Certification authorities are wary
– Why:
• Not sure which subprogram is called
• Not sure there is a subprogram to call
• Dangers of “down-casting”
• Call of abstract subprograms
– Rules:
• Level A: disallowed (pragma Restrictions (No_Dispatch) required)
• Level B .. D: allowed with documentation (dispatching calls must
be identified)
• Level E: allowed
• Polymorphic collections (e.g. array of access to class-wide type)
must be static
• Tagged types and type extension are always allowed
35. Coding standard: examples (4)
• Tasking
– Level A: disallowed
– Level B .. D: Ravenscar only, with documentation
– Level E: allowed
– Requires a run-time kernel which must also be certified
– Requires analysis of the scheduling
• Our current practice
– No tasking used in existing products
• CSMART: no tasking provided
• MARK: no tasking provided
– Tasking provided by the RTOS in products currently in
development (using MOSART)