Train OS: Senior Capstone Project

  • Final Thoughts

    Now that I have completed my capstone I felt like sharing my final thoughts. As a whole I found this project to be very rewarding. This project allowed me to work with concepts from almost every course I have taken during my time here at SNC. I worked with OS concepts, threads, events, game programming, […]

  • What I Would Add

    For this final post I would like to take the time to address some things that I would have added or changed if I had the time to continue working on this project. First is a simple change. I would change the deadlocking algorithm so that instead of deleting the train who caused deadlock I […]

  • Update: Presentation Done

    This weekend I had the pleasure of showing off my capstone project during presentation day. I want to thank anyone who was able to attend and support myself and all of the other seniors presenting. I believe my presentation went very well (although I did run a bit long). Now all I have left is […]

  • Update: Three Clients

    Today I tested the program with three clients on the server at once. The program functioned fairly well with only one major issue. The bug was in the train data that was being sent from the server to the third client. When collecting the train data I accidentally wrote message = train.getData() instead of message […]

  • Update: Deadlocking

    As part of the requirements for the project TOS is meant to handle some OS concepts like deadlocking. With the deadline coming quickly I was not sure if I would be able to implement any deadlock related code. What I decided to do was try and come up with a minimal change solution. The plan […]

  • Update: Two Client Problem IV

    Working with Dr. McVey I was able to resolve several problems. The first problem we tackled was the disconnection of a client because this was not working on the client or server side of the application. On the server side we found that when removing a client I had accidentally left the numClients–; call inside […]

  • Update: Two Client Problem III

    Before I start with the two client progress I must mention that I added the ability to provide a username at the start menu and made that username follow the train around so that we can see whos who on track (eventually). Today I made a major breakthrough that should have been a minor one. […]

  • Update: Two Client Problem II

    Further development in the two client problem. Today when attempting to recreate the extreme failure of player B I was met with different problems but not the exploding. I tinkered with many pieces of code but still do not know what I changed that fixed the freezing all I really recall doing was adding several […]

  • Update: Two Client Problem

    Today I was able to use my roomates laptop to attempt to run my game on two remote clients at the same time. It did not go very well. Currently the problem goes like this: Player A connect. Player A game runs smoothly. Player B connect. Player B game stops running and windows throws the […]

  • Update: Remote Server

    After a bit of research and some minor code changes my server program is now capable of running on a remote server (compsci04) and my client is able to connect to that remote point. So far it is only one client connecting. The biggest challenge with going remote was that the server runs on linux […]

Questions?


css.php