StuBS
|
This task is voluntary and will not be evaluated. However, it is highly recommended as preparation for the first assignment.
For test outputs and to facilitate troubleshooting, output functions are essential in operating system development. StuBS achieves this with functionality similar to the output stream of the C++ I/O library, in our case provided by the classes Stringbuffer and OutputStream – the standard library itself is of course not available on bare hardware.
sprintf
) and avoid dynamic memory allocation. The only exceptions is the library function putchar()
. Additionally, the system calls open()
, write()
, close()
and fsync()
may be used.The implementation should be extensively tested by implementing the classes ConsoleOut and FileOut and use them in a console application on Linux. It will be integrated in OOStuBS or MPStuBS in the next assignment.
A test application can be found in the test-stream
folder.