beyond crts n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Beyond CRTS PowerPoint Presentation
Download Presentation
Beyond CRTS

Loading in 2 Seconds...

play fullscreen
1 / 22

Beyond CRTS - PowerPoint PPT Presentation


  • 123 Views
  • Uploaded on

Beyond CRTS. Miranda Technologies Chris Pringle. Agenda. Introduction About Miranda My Role Real Time Systems Crashing Nightmares Software Design in the Real World Software Management People Skills Finding your job!. Introduction. About me 2+2 CRTS Degree Career History RWE NPower

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Beyond CRTS' - alamea


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
beyond crts

Beyond CRTS

Miranda Technologies

Chris Pringle

agenda
Agenda
  • Introduction
  • About Miranda
  • My Role
  • Real Time Systems
  • Crashing Nightmares
  • Software Design in the Real World
  • Software Management
  • People Skills
  • Finding your job!
introduction
Introduction
  • About me
  • 2+2 CRTS Degree
  • Career History
    • RWE NPower
    • Hewlett Packard
    • Miranda Technologies
about miranda
About Miranda
  • Product Ranges
    • Master Control & Branding
    • Facility Monitoring & Control
    • Signal Processing and Distribution
    • Multi Image Display Processors
    • Routing Switchers
    • Playout Servers
    • Production and Post-Production Interfaces
my role at miranda
My role at Miranda
  • Presmaster Control System
    • Configuration tools
    • Router driver
  • Imagestore / Intuition
    • Kernel & Drivers
    • Audio
    • Clip Playback
  • R&D Responsibilities
    • Configuration Management System
    • R&D Servers
    • R&D Racks
real time systems
Real Time Systems
  • What are they?
    • Hard real time
      • Operation depends on correctness and time constraints
    • Soft real time
      • As above, but some toleration of lateness
real time linux windows
Real Time Linux/Windows?
  • What constitutes a Real Time O/S?
    • Deterministic response times
    • Low interrupt latency
    • Preemptible kernel
    • Scheduler (FIFO)
    • And more… (Priority inversion resolution, deadlock detection etc.)
real time linux windows1
Real Time Linux/Windows?
  • Are Linux and Windows Real Time?
  • Can they be made Real Time?
    • MontaVista Linux
    • FSMLabs RTLinux
    • Windows CE
    • VXWorks
  • BUT – they none of them guarantee determinism!
  • Remember – If you’re in R&D – the ‘R’ is important!!!
crashing nightmares
Crashing nightmares!
  • What do you do when?
    • System runs okay for 99.9% of the time
    • System hangs after 3 weeks
    • No log entries
  • Imagestore 300 Nightmare
    • Simple CPU change
  • Intuition Nightmare
fault finding
Fault finding
  • Look for the source
    • Is it in kernel or user space? Is it hardware?
    • List the possibilities – no matter how improbable!
    • Think about what may be aggravating the problem
    • Try and make the problem worse
  • Get pointers/help
    • Use your colleagues!
    • Internet
fault finding1
Fault Finding
  • Reproduce it
    • Kernel/JTAG debugger
    • Logic analyser / FPGA scope tools
  • Isolate the problem in software
  • If necessary, isolate the problem in hardware
  • Learn when it’s time to change your approach
what was it
What was it?
  • Imagestore 300:
    • outb(0x80, 0x80);
    • outb(0x30, 0x30);
  • Intuition
    • We’ll never know!
programming real time systems
Programming Real Time Systems
  • Make effective use of drivers/interrupts
    • Top and bottom halves
  • FIFO Scheduler
    • Don’t poll or sleep! Use interrupts!
  • CPU vs I/O bound
    • Get your priorities sorted!
  • Process affinity
    • Plan and experiment
  • Hardware Settings
    • Wrongly set BIOS settings can RUIN your performance!
software development in the real world
Software Development in the Real World
  • Build on your skills – Research!
  • Learn when to compromise
  • The most elegant solution isn’t always the right one
  • Accept you’re sometimes wrong!
software management
Software Management
  • Configuration Management
  • Issue Tracking
  • The dreaded “D” word!
  • Project Plan & Resources
  • Code Reviews
people skills
People Skills
  • Dealing with?
    • Product Development
    • Senior Managers
    • Support
    • Peers
    • Your immediate manager/supervisor
dealing with people
Dealing with People
  • Management
    • Be respectful, but fight your corner
    • Cover your back side!
  • A good programmer is a team player!
    • Learning to deal with awkward people
    • Accept it when you’re wrong!
  • Don’t make recommendations to management if you’re not sure!
communication
Communication
  • Team Meetings
  • Code Reviews
  • Email / Documentation
  • Log book!
finding your job
Finding your job!
  • Know what you want
  • The Interview
    • 2 way process
    • Don’t lie/blag – it’s transparent!
    • Be honest and upfront with your skill set
    • Sell yourself – but don’t be arrogant!
  • Look for ways to enhance your skills
  • Look for a challenge!