The OSS system is an operating system simulation tool. The simulated operating system is a multi-process system running on a single processor. The underlying simulated hardware contains CPU, registers, main memory, backing-store and other system resources controlled by semaphores. The simulated operating system itself contains six major components, which are process management, scheduler, memory management, message management, semaphore management and resource management. The OSS system can be used to help computer science students to get a clear understanding of how an operating system works and to study the impact of various algorithms on the performance of an operating system. As the implementing language, Java has outstanding features, such as the multiple the portability, which are very much appreciated in the development of the OSS system.