/dev/null z (ograniczoną) pamięcią Celem zadania jest stworzenie modułu dla jądra Linuksa, który obsługuje urządzenie o własnościach podobnych do /dev/null (w przypadku podrzędnego numeru urządzenia równego 0): - można do niego pisać dowolnie dużo danych - czytanie z niego daje natychmiast sytuację końca strumienia. Jednak w odróżnieniu od /dev/null, nasze nowe urządzenie ma ograniczony bufor cykliczny ustalonego rozmiaru N bajtów, w którym przechowuje przez cały czas ostatnie N bajtów zapisane do urządzenia. Te dane można odczytać z tego samego urządzenia przez i-węzeł z numerem podrzędnym równym 1. Dane będą odczytywane w kolejności, w jakiej zostały zapisane. Odczytanie znaków z urządzenia usuwa je równocześnie z bufora. Ponadto urządzenie to ma stworzyć w systemie plików /proc dwa pliki o nazwach: - null-size - null-data-size Do pliku null-size można pisać, przy czym zapisanie ciągu znaków reprezentującego liczbę naturalną (w tym zero) powoduje ustawienie rozmiaru bufora na podaną liczbę bajtów (nie przekraczającą 128KB); zapisanie dowolnego innego ciągu znaków nie powoduje zmiany rozmiaru bufora. Zmiana rozmiaru bufora powoduje skasowanie jego zawartości. Z pliku null-size można też czytać, odczytany zostanie ciąg znaków (cyfr) reprezentujący bieżący rozmiar bufora w bajtach. Z pliku null-data-size można tylko czytać (zapis jest ignorowany), odczytany zostanie ciąg znaków reprezentujący bieżącą liczbę znaków dostępnych do odczytania w buforze cyklicznym. Początkowy rozmiar bufora należy określić przy ładowaniu modułu za pomocą parametru o nazwie bufsize (wyrażonego w kilobajtach).