CPEN 333 - System Software Engineering (September-December 2022)
Tic-Tac-Toe game played against a computer, which makes choises randomly not strategically.
A simple GUI based app that allows us to add, subtract, multiply and divide rational numbers.
Implementation of a sudoku solution validator in two ways:
- First a single process version of the complete program.
- Then rewrite it so that the validation tasks are done using multiple processes, each responsible only for a portion of validating the puzzle.
Implementation of a multithreaded sorting program that sorts a list of integers.
Multithreaded program with a specific python implementation of the producer-consumer synchronization problem.
Dining philosophers solution implementions:
- Allow a philosopher to pick up their chopsticks only if both chopsticks are available.
- Use an asymmetric solution, an odd philosopher picks up first their left chopstick and then their right chopstick, whereas an even philosopher picks up their right first and then their left chopstick
- Suhail Khalil
- Idil Bil
Implementing a multithreaded snake game with graphic user interface.
UDP Pinger between client and server.