I am an embedded engineer, with not much experience. I was at an interview and I was asked a question, which I guess is not new and already has answers:
You have a peripheral which is constantly receiving input from external world, the peripheral has a buffer. The rate of the input changes every now and then. The peripheral needs to read the input buffer and process it. It checks the input message and sees if it matches the filter configured. If it matches it is forwarded else it is discarded.
Questions were like:
- How do you manage this?
- What if the buffer gets full? You only have a limited size buffer? The peripheral has only a certain speed of processing the buffer messages.
- How do you adapt the buffer to different input speeds?
Appreciate your help. Thanks.