How to Measure RTOS Performance – Colin Walls
In the world of smart phones and tablet PCs memory might be cheap, but in the more constrained universe of deeply embedded devices, it is still a precious resource. This is one of the many reasons why most 16- and 32-bit embedded designs rely on the services of a scalable real-time operating system (RTOS). An RTOS allows product designers to focus on the added value of their solution while delegating efficient resource (memory, peripheral, etc.) management. In addition to footprint advantages, an RTOS operates with a degree of determinism that is an essential requirement for a variety of embedded applications. This paper takes a look at “typical” reported performance metrics for an RTOS in the embedded industry.
Introduction to Real-Time Operating Systemscoolmirza143
shared by Mansoor Mirza
Understanding Real-Time Operating Systems
Types of Real-Time Operating System
Requirements for Real-Time Operating System
Difference between General Purpose Operating System (GPOS) and Real-Time Operating System (RTOS)
Conversion Linux kernel to support Real-Time operations
Patching the linux kernel
Major changes in patched kernel
Hands-on labs
Conversion of Linux kernel to support real time
Code a real time application (Audio Feedback removal)
This presentation talks about Real Time Operating Systems (RTOS). Starting with fundamental concepts of OS, this presentation deep dives into Embedded, Real Time and related aspects of an OS. Appropriate examples are referred with Linux as a case-study. Ideal for a beginner to build understanding about RTOS.
Introduction to Real-Time Operating Systemscoolmirza143
shared by Mansoor Mirza
Understanding Real-Time Operating Systems
Types of Real-Time Operating System
Requirements for Real-Time Operating System
Difference between General Purpose Operating System (GPOS) and Real-Time Operating System (RTOS)
Conversion Linux kernel to support Real-Time operations
Patching the linux kernel
Major changes in patched kernel
Hands-on labs
Conversion of Linux kernel to support real time
Code a real time application (Audio Feedback removal)
This presentation talks about Real Time Operating Systems (RTOS). Starting with fundamental concepts of OS, this presentation deep dives into Embedded, Real Time and related aspects of an OS. Appropriate examples are referred with Linux as a case-study. Ideal for a beginner to build understanding about RTOS.
A real-time operating system (RTOS) is an operating system (OS) intended to serve real-time applications that process data as it comes in, typically without buffer delays. Processing time requirements (including any OS delay) are measured in tenths of seconds or shorter increments of time.
About real time system task scheduling basic concepts.It deals with task, instance,data sharing and their types.It also covers various important terminologies regarding scheduling algorithms.
Very long instruction word or VLIW refers to a processor architecture designed to take advantage of instruction level parallelism
This type of processor architecture is intended to allow higher performance without the inherent complexity of some other approaches.
Join this video course on Udemy. Click the below link
https://www.udemy.com/mastering-rtos-hands-on-with-freertos-arduino-and-stm32fx/?couponCode=SLIDESHARE
>> The Complete FreeRTOS Course with Programming and Debugging <<
"The Biggest objective of this course is to demystifying RTOS practically using FreeRTOS and STM32 MCUs"
STEP-by-STEP guide to port/run FreeRTOS using development setup which includes,
1) Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView
2) FreeRTOS+Simulator (For windows)
Demystifying the complete Architecture (ARM Cortex M) related code of FreeRTOS which will massively help you to put this kernel on any target hardware of your choice.
This ppt explains in brief what actually is arm processor and it covers the first 3 chapters of book "ARM SYSTEM DEVELOPERS GUIDE". The 3 chapters include the history,architecture,instruction set etc.
This presentation gives a brief over view of Embedded Systems. It describes the common characteristics of Embedded systems, the design metrics, processor technologies and also summarizes differences between Microcontrollers and Microprocessors.
This presentation is a short introduction to issues in Hardware-Software Codesign. It discusses definition of codesign, its significance, design issues in Hardware-software codesign, Abstraction levels, Duality of harware and software
Join this video course on Udemy. Click the below link
https://www.udemy.com/mastering-rtos-hands-on-with-freertos-arduino-and-stm32fx/?couponCode=SLIDESHARE
>> The Complete FreeRTOS Course with Programming and Debugging <<
"The Biggest objective of this course is to demystifying RTOS practically using FreeRTOS and STM32 MCUs"
STEP-by-STEP guide to port/run FreeRTOS using development setup which includes,
1) Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView
2) FreeRTOS+Simulator (For windows)
Demystifying the complete Architecture (ARM Cortex M) related code of FreeRTOS which will massively help you to put this kernel on any target hardware of your choice.
A real-time operating system (RTOS) is an operating system (OS) intended to serve real-time applications that process data as it comes in, typically without buffer delays. Processing time requirements (including any OS delay) are measured in tenths of seconds or shorter increments of time.
About real time system task scheduling basic concepts.It deals with task, instance,data sharing and their types.It also covers various important terminologies regarding scheduling algorithms.
Very long instruction word or VLIW refers to a processor architecture designed to take advantage of instruction level parallelism
This type of processor architecture is intended to allow higher performance without the inherent complexity of some other approaches.
Join this video course on Udemy. Click the below link
https://www.udemy.com/mastering-rtos-hands-on-with-freertos-arduino-and-stm32fx/?couponCode=SLIDESHARE
>> The Complete FreeRTOS Course with Programming and Debugging <<
"The Biggest objective of this course is to demystifying RTOS practically using FreeRTOS and STM32 MCUs"
STEP-by-STEP guide to port/run FreeRTOS using development setup which includes,
1) Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView
2) FreeRTOS+Simulator (For windows)
Demystifying the complete Architecture (ARM Cortex M) related code of FreeRTOS which will massively help you to put this kernel on any target hardware of your choice.
This ppt explains in brief what actually is arm processor and it covers the first 3 chapters of book "ARM SYSTEM DEVELOPERS GUIDE". The 3 chapters include the history,architecture,instruction set etc.
This presentation gives a brief over view of Embedded Systems. It describes the common characteristics of Embedded systems, the design metrics, processor technologies and also summarizes differences between Microcontrollers and Microprocessors.
This presentation is a short introduction to issues in Hardware-Software Codesign. It discusses definition of codesign, its significance, design issues in Hardware-software codesign, Abstraction levels, Duality of harware and software
Join this video course on Udemy. Click the below link
https://www.udemy.com/mastering-rtos-hands-on-with-freertos-arduino-and-stm32fx/?couponCode=SLIDESHARE
>> The Complete FreeRTOS Course with Programming and Debugging <<
"The Biggest objective of this course is to demystifying RTOS practically using FreeRTOS and STM32 MCUs"
STEP-by-STEP guide to port/run FreeRTOS using development setup which includes,
1) Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView
2) FreeRTOS+Simulator (For windows)
Demystifying the complete Architecture (ARM Cortex M) related code of FreeRTOS which will massively help you to put this kernel on any target hardware of your choice.
This is a free module introducing embedded systems. It covers C programming, microcontrollers and software design in 40 ours. Its free for use in universities and institutes on condition of prior notification. Please, do not use it for commercial purposes. If you need full set If you need accompanying labs and software tool feel free to contact me by email (amraldo@hotmail.com) or by mobile (+201223600207).
Advanced debugging on ARM Cortex devices such as STM32, Kinetis, LPC, etc.Atollic
Learn more on advanced debugging of ARM Cortex devices, including how to analyse crashed system after a hard fault exception, SWV real-time event and data tracing, analysing execution history using ETM instruction tracing, dual-core debugging, kernel aware RTOS debugging, and more. Also, learn how to introducing bugs in the first place with static source code analysis (such as MISRA-C), code complexity analysis, and source code review meetings (peer review)
Introduction – Multiple tasks and multiple processes – Multirate systems- Preemptive realtime operating systems- Priority based scheduling- Interprocess communication mechanisms – Evaluating operating system performance- power optimization strategies for processes –Example Real time operating systems-POSIX-Windows CE. – Distributed embedded systems – MPSoCs and shared memory multiprocessors. – Design Example – Audio player, Engine control unit – Video accelerator.
Real-Time Operating Systems Real-Time Operating Systems RTOS .pptlematadese670
Real-Time OpReal-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operating Systems Real-Time Operatingv
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013Amazon Web Services
Your AMI is one of the core foundations for running applications and services effectively on Amazon EC2. In this session, you'll learn how to optimize your AMI, including how you can measure and diagnose system performance and tune parameters for improved CPU and network performance. We'll cover application-specific examples from Netflix on how optimized AMIs can lead to improved performance.
SECURITY SOFTWARE RESOLIUTIONS (SSR) 1
SECURITY SOFTWARE RESOLIUTIONS (SSR) 4
First page
TABLE OF CONTENTS (TOC)
DOMAIN 1-PROJECT OUTLINE………………………………………………………..3
1-1 PROJECT OUTLINE AND REQUIREMENTS…………………………..4
DOMAIN 2 -SECURITY IN THE DEVELOPMENT LIFE CYCLE…………………….8
DOMAIN 3 -SOFTWARE ASSURANCE TECHNIQUES………………………………12
DOMAIN 4 -SECURITY IN NONTRADITIONAL DEVELOPMENT MODELS……...15
DOMAIN 5-SECURITY STATIC ANALYSIS…………………………………………..20
DOMAIN 6-SOFTWARE ASSURANCE POLICIES AND PROCESSES………………29
DOMAIN 1-1 PROJECT OUTLINE AND REQUIREMENTS
Telecom and Network Security Requirements
Remote Access Security Management
Remote Connections
· xDSL – Digital Subscriber Line
· Cable modem
· Wireless (PDAs)
· ISDN – Integrated Services Digital Network
Securing External Remote Connections
· VPN – Virtual Private Network
· SSL – Secure Socket Layer
· SSH – Secure Shell
Remote Access Authentication
· RADIUS – Remote Access Dial-In User Server
· TACACS – Terminal Access Controller Access Control Server
Remote Node Authentication
· PAP – Password Authentication Protocol – clear text
· CHAP – Challenge Handshake Authentication Protocol – protects password
Remote User Management
· Justification of remote access
· Support Issues
· Hardware and software distribution
Intrusion Detection
· Notification
· Remediation
Creation of:
· Host and networked based monitoring
· Event Notification
· CIRT – Computer Incident Response Team
· CIRT Performs
· Analysis of event
· Response to incident
· Escalation path procedures
· Resolution – post implementation follow up
Intrusion Detection Systems
· Network Based – Commonly reside on a discrete network segment and monitor the traffic on that network segment.
· Host Based – Use small programs, which reside on a host computer. Detect inappropriate activity only on the host computer, not the network segment.
· Knowledge Based – Signature based
· Behavioral Based – Statistical Anomaly
Knowledge Based
Pros Cons
Low false alarms Resource Intensive
Alarms Standardized New or unique attacks not found
Behavior Based – less common
Pros Cons
Dynamically adapts High False Alarm rates
Not as operating system specific User activity may not be static enough to implement
CIRT – (CERT) – Computer Incident Response Team
Responsibilities:
· Manage the company’s response to events that pose a risk
· Coordinating information
· Mitigating risk, minimize interruptions
· Assembling technical response teams
· Management of logs
· management of resolution
Network Availability
· RAID – Redundant Array of Inexpensive Disks
· Back Up Concepts
· Manage single points of failure
RAID – Redundant Array of Inexpensive Disks
· Fault tolerance against server crashes
· Secondary – impro.
Slides presented at "Getting Your Medical Device FDA Approved" event, presented by Mentor Graphics Embedded Software, discussing how to address the enhanced scrutiny from government agencies that can introduce significant delays with the commercial release of software-related medical devices.
Getting through the FDA review as quickly as possible requires a clear understanding of the development standards, documentation and testing that is now expected for Medical devices. During this session we discussed how FDA hot buttons affect your medical device submission will be discussed, including:
-Requirements for software development as outlined in IEC 62304
-Content considerations for premarket submissions
-Human factors engineering as a platform for enhanced user safety
-Provisions for data security and protection against unauthorized wireless access
We reviewed the design control requirements and product development approach that can shorten your medical device's path to market with a focus on safety, human factors engineering and security.
Security for io t apr 29th mentor embedded hangoutmentoresd
Security Strategies for Internet of Things From Devices to The Cloud -- these slides were presented during a live Google+ On-Air Hangout Panel on April 29th, 2014, presented by Mentor Graphics Embedded Software
Internet of Things Connectivity for Embedded Devicesmentoresd
Slides presented at "Internet of Things Connectivity for Embedded Devices" live event by Mentor Graphics Embedded Software and Nano Power Communication. See the live event here: https://plus.google.com/u/0/events/cfgduqagg4r5l871uogca4ujea0
Please contact embedded_software@mentor.com for any questions or inquiries.
Technology, Business and Regulation of the Connected Carmentoresd
These slides were presented by Alison Chaiken of Mentor Graphics Embedded Software and John Kenney of Toyota at a Google+ On-Air Hangout. The Hangout can be viewed here: https://plus.google.com/u/1/b/112038386121410654017/events/ck73dq6nkp8guflfp9aqbbe7kog
Meeting SEP 2.0 Compliance: Developing Power Aware Embedded Systems for the M...mentoresd
Meeting SEP 2.0 Compliance: Developing Power Aware Embedded Systems for the Modern Age – Andrew Caples
The Smart Energy Profile (SEP) 2.0 is quickly becoming the go-to standard for developing innovative products and services in the energy power management sector. Information flow between meters, smart appliances, and energy management systems must occur in an open, standardized, and interoperable fashion. SEP 2.0 establishes the standard for communication interoperability as well as security for networked appliances and meters.
In this session attendees will learn how to meet the challenges of SEP 2.0 compliance with a small footprint RTOS, such as Nucleus RTOS from Mentor Graphics, to address the connectivity and security requirements for the smart energy profile. This session takes a detailed look at the design considerations to consider how an RTOS can reduce development time and cost for SEP 2.0 compliant products.
Profiling Multicore Systems to Maximize Core Utilization mentoresd
Profiling Multicore Systems to Maximize Core Utilization – Colin Walls
Underutilization of cores in a multicore system can be considered a bug. As your system incorporates more cores, you need to make sure that all the cores are being utilized fully. Un-expected inter-actions between processes, the operating system, and resources can prevent cores from delivering peak performance. In this session explore how to profile what each core is doing, which processes are running on each core, and understand where core utilization falls below optimum values.
Developing the Next Generation Embedded HMIs mentoresd
Developing the Next Generation Embedded HMIs – Phil Burr
With more and more people using smartphones it is no surprise that more and more people are demanding better HMIs in other products: whether it is in their set top box, refrigerator, or car, users have come to expect graphically rich dynamic HMIs. This is all very well, but what is a humble developer to do when confronted with the constraints of their embedded device. This presentation examines the options for embedded developers needing to implement these latest HMIs and looks at tools and techniques which can help developers meet or exceed their customer’s HMI expectations.
Simultaneously Leveraging Linux and Android in a GENIVI compliant IVI System mentoresd
Simultaneously Leveraging Linux and Android in a GENIVI compliant IVI System – Andrew Patterson
It is widely accepted that Linux is the operating system of choice when building a complex, in-vehicle infotainment (IVI) system. The ability to support and quickly integrate device drivers for features such as CAN, MOST, graphics accelerators, networking interfaces, and Bluetooth can result in key differentiators for any GENIVI compliant IVI-based system. But what if Android was introduced as a second operating system? This session multiple implementations integrating both Android and Linux on multicore SoCs sharing audio and video resources across both domains while maintaining GENIVI compliance. Implementations with and without hypervisor technology will also be presented.
Power Management in Embedded Systems – Colin Walls
The importance of power management in today’s embedded designs has been steadily growing as an increasing number of battery powered devices are developed. Often power optimizations are left to the very end of the project cycle, almost as an afterthought. In this presentation we will discuss design considerations that should be made when starting a new power sensitive embedded design, which include choosing the hardware with desired capabilities, defining a hardware architecture that will allow software to dynamically control power consumption, defining appropriate power usage profiles, making the appropriate choice of an operating system and drivers, choosing measurable power goals and providing these goals to the software development team to track throughout the development process.
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.
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.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
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.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
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.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
4. Introduction – Why?
Desktop computers Embedded systems
– Infinite CPU power – Enough CPU power – just
– Infinite memory – Adequate memory – none to spare
– Costs nothing – Power consumption an issue
– Cost normally critical
5. Introduction – Choosing an RTOS
RTOS solutions
– Proprietary [in-house; home brew]
– Commercial
– At least 200 product available
– Open source
Asking the right questions is important
Understanding the answers is critical
– Pitfalls with misinterpretation
7. RTOS Metrics
Three common categories:
– Memory footprint
– Program and data
– Latency
– Interrupt and scheduling
– Services performance
No real standardization
– Embedded Microprocessor Benchmark Consortium
(EEMBC) not widely adopted
– Oriented towards CPU benchmarking
9. Memory Footprint
RAM and ROM requirements of RTOS
– On a specific platform
ROM size: RAM size:
– Kernel code – Kernel data structures
– Read-only data – Global variables
– Runtime library code – May need
– Maybe in flash; accommodate “ROM”
possibly copied to
RAM
10. Memory Footprint – Dependencies
Key factors affect the footprint calculation
CPU architecture
– Huge effect on number of instructions
Software configuration
– Which kernel components are included
– Scalability ...
Compiler optimization
– Reduces code size, but may adversely affect performance
11. Memory Footprint – Scalability
RTOS Application Memory
Service #1 …
rtos_call_1();
Service #2
…
rtos_call_3(); Application
Service #3
… Code
Service #4 rtos_call_157();
…
RTOS
Service #271
core
Service #1
Service #3
Service #157
12. Memory Footprint – Measurement
Making measurement need not be difficult
Two key methods:
– Memory MAP file
– Generated by standard linkers
– Quality and detail varies between tools
– Specific tool
– Shows footprint information for selected executable image
– Example: objdump
13. Memory Footprint – Importance
Limited memory availability
– Small on-chip memory
– No external memory option
– Application code is priority
Larger systems
– Kernel performance a priority
– Place in on-chip memory
– Lock into cache
Using a bootloader
– Non-volatile memory and RAM space used
14. Memory Footprint – Pitfalls
Vendor data can be readily misinterpreted
Look at minimum configuration definition
– It may be a tiny, impractical subset
Runtime library functions are often not included
RAM/ROM sizes should have a min/max range
– RAM is likely to be application dependent
– ROM driven by kernel configuration
– Need minimum “useable” size
– Also maximum measure with all services
– Scalability variable – may be different kernel versions
15. Memory Footprint – Example
Nucleus RTOS kernel is fully scalable
Example: ARM Cortex A8 in ARM mode
Built with Mentor Sourcery CodeBench toolchain
Full optimization for size
ROM = 12-30 Kbytes
RAM = 500 bytes
16. Memory Footprint – Example
Min has essential kernel services [dynamic memory,
threads, semaphores, events, queues]
– Runtime library excluded
Max includes all kernel services
Compiling for Thumb-2 mode reduces ROM by 35%
– So Nucleus kernel can use 7.8 Kbytes on a Cortex-M
based controller
19. Interrupt Latency – Definition
Different definitions
System: Time between interrupt assertion and the
instant an observable response happens
OS: Duration of when the CPU was interrupted until
the start of the corresponding interrupt service
routine (ISR)
– This is really OS overhead
– Many vendors refer to this as the latency
– Hence often report zero latency
20. Interrupt Latency – Measurement
Interrupt response is the sum of two distinct times:
ƮIL = ƮH + ƮOS
where:
ƮH is the hardware dependent time
– depends on the interrupt controller on the board as well as the type
of the interrupt
ƮOS is the OS induced overhead
– Best and worst case scenarios
– Worst when kernel disables interrupts
21. Interrupt Latency – Measurement
Best approach is to record time between interrupts
source and response
– Use an oscilloscope
– For example:
– One GPIO pin can generate an interrupt
– Another pin toggled at the start of the ISR
22. Interrupt Latency – Importance
Specific types of designs rely on this metric:
– Time critical
– Fault tolerant
If high I/O bandwidth is needed, measure the latency of
a particular interrupt
Most systems can tolerate interrupt latency of tens of
microseconds
23. Interrupt Latency – Pitfalls
Main danger is interpretation of published figures
Key factors to check:
Hardware configuration OS configuration
– Which platform? – Where is code running
– CPU speed? from? [Flash, SDRAM ...]
– Cache configuration? – Which interrupt used?
– Timer frequency? – Code optimized for speed?
– Interrupt controller type? – Is metric best or average
case?
24. Interrupt Latency – Example
Nucleus RTOS
– ARM Cortex A8
– 600MHz
– Running from SRAM
Average interrupt latency of less than 0.5
microseconds
26. Scheduling Latency – Definition
Performance of RTOS thread scheduler
Very wide variation in measurement technique and
interpretation
Two distinct related quantities:
– Context switch time
– Scheduling overhead
29. Scheduling Latency – Measurement
Scheduling latency is the maximum of two times:
ƮSL = MAX(ƮSO, ƮCS)
where:
ƮSO is the scheduling overhead
– End of ISR to start of task schedule
ƮCS is the time taken to save and restore thread context
30. Scheduling Latency – Importance
Most systems that have stringent interrupt latency
demands also need low scheduling latency
Broadly, systems that are:
– Time critical
– Fault tolerant
31. Scheduling Latency – Pitfalls
Ignoring initial system state
– If system is idle, there is no time taken saving context
Key factors to check:
Hardware configuration OS configuration
– Which platform? – Where is code running
– CPU speed? from? [Flash, SDRAM ...]
– Cache configuration? – Which interrupt used?
– Timer frequency? – Code optimized for speed?
– Interrupt controller type? – Is metric best or average
case?
32. Scheduling Latency – Example
Nucleus RTOS
– ARM Cortex A8
– 600MHz
– Running from SRAM
Scheduling latency is 1.3 microseconds
34. Timing Kernel Services
RTOS may have a great many API calls
Timing of keys ones may be of interest
– Focus on frequently used API calls
Four key categories:
– Threading services
– Synchronization services
– Inter-process communication services
– Memory services
35. Timing Kernel Services
Threading Services
– Control of fundamental kernel functionality:
– Create thread
– Start thread
– Resume thread
– Stop thread
– Many multi-taking applications make heavy use of these
calls
36. Timing Kernel Services
Synchronization Services
– Services to synchronize between contexts, like an ISR and
a thread
– Also protection of critical code sections from concurrent
access
– e.g. Semaphore may be used by Ethernet ISR to write data into
shared memory that is also used by a task
– Timing is important is the application has numerous shared
resources or peripherals
37. Timing Kernel Services
Inter-process Communication Services
– Services to share data between multiple threads
– Examples:
– FIFOs
– Queues
– Mailboxes
– Event flags
– Many multi-taking applications make heavy use of this type
of service
38. Timing Kernel Services
Memory Services
– In a multi-threaded context, kernel is used to manage
dynamic memory
– Allocation and de-allocation times are important
– Applications with large data throughput are particularly sensitive
39. Timing Kernel Services – Pitfalls
Hardware configuration
– Which platform?
– CPU speed?
– Cache configuration?
OS configuration
– Where is code running from? [Flash, SDRAM ...]
– Code optimized for speed?
– Is metric best or average case?
– Is kernel configured for reduced error checking?
40. Timing Kernel Services – Example
Nucleus RTOS Kernel Service Time in µS
Task resumption 0.3
Task suspension 0.3
Obtaining a semaphore 0.5
Set an event 0.4
Send message to queue 0.9
Allocate memory 0.2
De-allocate memory 0.7
Allocate partition 0.4
42. Conclusions
RTOS performance data provided by vendors can be
useful
It can also be misleading if it is misinterpreted
Need a thorough understanding of:
– Measurement techniques
– Terminology
– Trade-offs
to conduct fair comparison
Recommendation is to rely on holistic or application-
oriented measurements
43. Thank you
Colin Walls
colin_walls@mentor.com
http://blogs.mentor.com/colinwalls
See white paper:
"Measuring RTOS Performance: What? Why? How?"
mentor.com/embedded