Pioneering Real-Time

Pioneering Real-Time

My keynote from PyCon Balkan 2019

077e9a0cb34fa3eba2699240c9509717?s=128

Andrew Godwin

October 03, 2019
Tweet

Transcript

  1. 7.

    “A system in which input data is processed within milliseconds

    so that it is available virtually immediately
  2. 8.
  3. 9.
  4. 10.
  5. 14.

    Program 2 Program 3 Program 1 300 cycles Restore Save

    Restore Save Restore Save 30 cycles 30 cycles 300 cycles 30 cycles 30 cycles 300 cycles 30 cycles 30 cycles
  6. 17.

    Active Threads Idle Threads Runtime 1 0 1.3 seconds 1

    1 2.3 seconds 1 5 5.4 seconds 1 30 39 seconds 1 100 15 minutes
  7. 19.
  8. 20.
  9. 23.

    “ Don Eyles ...when the guidance system was first being

    conceived, the onboard software was almost an afterthought
  10. 24.
  11. 25.
  12. 27.

    Job Priorities Higher numbers beat lower Limited job "RAM" Only

    7 running at once Interrupts from hardware Descent radar, keyboard, etc.
  13. 30.
  14. 33.

    Descent Phase: 85% load Capsule orientation and thrust calculations Hardware

    Bug: 13% Caused by the descent radar Display Routine: 5% Astronauts trying to see how far to go
  15. 34.
  16. 35.
  17. 40.

    Apollo 9 First flight test of Lunar Module Apollo 10

    Second test and partial descent of Lunar Module Apollo 11 First Moon landing
  18. 41.

    “ Eugene A. Cernan, recounting Apollo 10 Don't give those

    guys an opportunity to land, 'cause they might!
  19. 44.

    We often only design for the good cases After all,

    that's what we're expecting to happen
  20. 48.

    “ Don Eyles When Hal Laning designed the Executive and

    Waitlist system, he made it up from whole cloth with no examples to guide him. The design [...] still represents the state of the art.
  21. 49.