- TextdokumentOne Solution to Rule Them All: ATTEST as Unified Testing Solution for Programming Courses(Tagungsband des FG-BS Herbsttreffens 2023, 2023) Kissich, Meinhard; Kanics, Kristóf; Weinbauer, Klaus; Scheipel, Tobias; Baunach, MarcelAssessing student submissions and providing accurate and timely feedback in educational courses that involve writing code has shown to be demanding. Thus, we recently designed an automated test system that builds submitted code, runs it on the actual target hardware, and generates a report that may include the results of various measurement devices. After a successful test run in the Real-Time Operating Systems course, we aim to adopt our ATTEST test system in further courses spanning the whole system stack. A unified testing solution benefits students by lowering extraneous cognitive load and supervisors by reducing maintenance effort. This work-in-progress paper states why test cases remain an essential assessment technique, summarizes approaches to virtualize laboratory courses, and elaborates on the coursespecific testing requirements and expected outcomes.
- TextdokumentNVall: A Crash-Resistant and Kernel-Compatible Memory Allocator for NVRAM(Tagungsband des FG-BS Herbsttreffens 2023, 2023) Nguyen, Dustin; Wiedemann, Ole; Nolte, Jörg; Schröder-Preikschat, WolfgangByte-addressable non-volatile memory is essentially persistent, but slower main memory that needs to be managed accordingly. Typical memory allocators for volatile memory are highly efficient today, but usually never had to be designed to keep their state in main memory consistent at all times against the background of system crashes. In this paper we present NVall, a crash-resistant kernel-level memory allocator for non-volatile RAM (NVRAM). The allocator works in a transactional manner, uses existing volatile memory to improve the performance of normal operation and is able to recover its volatile state from persistent data after a system crash. We implemented the allocator for the FreeBSD kernel and compare its performance against the standard (non-crash-resistant) in-kernel allocator of FreeBSD.