Kernel Module Observations and Elevator Simulation
Member 1: Taylor Ereio
Member 2: Zach Deimer
Member 3: Ricardo Noriega
p2_Ereio_Deimer_Noriega.tar Contents:
README.txt
report.txt
Part_One
Part_Two
Part_Three
Makefile
Completed using: Linux Mint Cinnamon distro VM && Lab computer # 24
To Build:
./Part_One/gcc -o part1.x part1.c
./Part_Two/make
./Part_Three/test_kernel/elevator/make
To Clean:
./Part_Two/make clean
./Part_Three/test_kernel/elevator/make clean
To Run Parts:
-
Part One (in Part_One):
-
strace -o log part1.x
-
Part Two (in Part_Two):
-
insmod x_time
cat /proc/timed
-
Part Three make
navigate to src folder
sudo insmod elevator.ko
./../elevator_driver/consumer.x --start
./../elevator_driver/producer.x
./../elevator_driver/consumer.x --stop
Known Bugs:
- Deadlocks
- Can add people to the list but elevator not detecting the request (deadlocking at request).
- Not properly printing out status after adding things to the list.
- Threads aren't stopping properly upon exiting the module.
- Elevator is not moving.
Unfinished Portions:
- Adding people to list, all other logic is present.
Additional Comments:
- We assumed that the messages wouldn't consume more than 2048 bytes for characters