Upgrade to Pro — share decks privately, control downloads, hide ads and more …

2020 - MOPCON - 拿到錘子的我想在為控制器上實作 Ruby VM

2020 - MOPCON - 拿到錘子的我想在為控制器上實作 Ruby VM

888339de9e7a88688b6acb30d33e66cd?s=128

蒼時弦や

October 24, 2020
Tweet

Transcript

  1. 拿到錘⼦的我想 在微控制器上⾯執⾏ Ruby Photo by Johannes Plenio from Pexels

  2. WEB DEVELOPER GAME DEVELOPER ૵ ࣌ ݭ໵ @elct9620

  3. None
  4. None
  5. Background

  6. None
  7. None
  8. Virtual Machine

  9. In computing, a virtual machine (VM) is an emulation of

    a computer system. - Wikipedia
  10. Process virtual machines are designed to execute computer programs in

    a platform-independent environment. - Wikipedia
  11. Compiler Source Code Executable

  12. Compiler Source Code Ruby VM

  13. https://bit.ly/2T4BCiG

  14. Getting Started

  15. https://bit.ly/3ojwEwX

  16. None
  17. None
  18. None
  19. None
  20. IREP

  21. An intermediate representation (IR) is the data structure or code

    used internally by a compiler or virtual machine to represent source code. - Wikipedia
  22. app.mrb RITE Header IREP Debug Section

  23. IREP ISEQ Pools Symbols IREP

  24. mrb_exec

  25. None
  26. Load Variable

  27. None
  28. None
  29. mruby is designed for Embedded System which is Raspberry Pi,

    but mruby-L1VM's target is run under 1KB RAM
  30. Behind VM

  31. None
  32. None
  33. None
  34. None
  35. None
  36. None
  37. None
  38. Hardware

  39. Development Board is made software developer easier to build an

    application with hardware
  40. The SDK for Development Board usually based on C or

    C++, which means it is possible to run Golang, Ruby, or Python on it.
  41. The hardest for developers is no hardware knowledge to write

    their driver for their hardware
  42. Hardware Abstraction Layer

  43. https://bit.ly/3kiNzxf

  44. https://bit.ly/3mcdLdu

  45. None
  46. None
  47. None
  48. Conclusion