Making a "character" driver
Budget: €8 – €30 EUR
The subject is the manufacture of a "character" type driver, which will be accessed, in read and write mode, in the /dev interface.
in the /dev interface. This involves creating a small shell script that will allow you to quickly create these interfaces.
The driver created will support several peripherals (at least 3) and will allow several processes to use these peripherals in parallel, without disturbing the rest of the process.
There is a part of this project that needs to be 'invented', and the subject is deliberately 'vague' so that everyone can add what they feel capable of doing. Daring will pay off, and will make the difference between acceptable and very good grades!
The driver will allow you to create a variable-delay 'watchdog'. The idea is to be able to write to the interface a strictly positive integer value representing the waiting time in seconds, and then then make a read access that will block the process and wake it up at the end of the timeout.
To do this, we first need to define the access protocol (for example, what do we do when a process wants to modify the value while another is reading the interface? etc ).
in the /dev interface. This involves creating a small shell script that will allow you to quickly create these interfaces.
The driver created will support several peripherals (at least 3) and will allow several processes to use these peripherals in parallel, without disturbing the rest of the process.
There is a part of this project that needs to be 'invented', and the subject is deliberately 'vague' so that everyone can add what they feel capable of doing. Daring will pay off, and will make the difference between acceptable and very good grades!
The driver will allow you to create a variable-delay 'watchdog'. The idea is to be able to write to the interface a strictly positive integer value representing the waiting time in seconds, and then then make a read access that will block the process and wake it up at the end of the timeout.
To do this, we first need to define the access protocol (for example, what do we do when a process wants to modify the value while another is reading the interface? etc ).