Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionLast revisionBoth sides next revision | ||
buzz_vm [2016/04/13 04:21] – created ilpincy | buzz_vm [2016/04/13 05:06] – ilpincy | ||
---|---|---|---|
Line 1: | Line 1: | ||
===== The Buzz Virtual Machine ===== | ===== The Buzz Virtual Machine ===== | ||
- | {{ : | + | {{: |
+ | The purpose of the Buzz Virtual Machine (BVM) is to collect sensor data, process incoming messages, execute a portion of the uploaded bytecode, apply values to the robot' | ||
+ | |||
+ | **Information flow.** The sensor data and the incoming messages are collected through the robot C API. It is the task of the designer who integrates the BVM with a specific robot to map sensor values to Buzz primitives (e.g., through tables and variables) and to pass incoming messages to the BVM input queue. Once this is done, the other components of the BVM crunch the data and produce an output. The output can be exported in two possible ways: through variables or through function calls. Again, it is the task of the designer to decide whether it makes more sense that a certain robot feature is mapped to a Buzz variable or to a function call. For more information see [[buzz_c_cpp|Integration with C/C++]]. | ||
+ | |||
+ | **The stacks.** The BVM is a [[https:// |