diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..eda67ed --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1759521263644 + + + + + + + + + + \ No newline at end of file diff --git a/bin/interrupts b/bin/interrupts new file mode 100644 index 0000000..b9d40a1 Binary files /dev/null and b/bin/interrupts differ diff --git a/bin/interrupts.exe b/bin/interrupts.exe new file mode 100644 index 0000000..34b7879 Binary files /dev/null and b/bin/interrupts.exe differ diff --git a/build.sh b/build.sh index 1742687..845408e 100644 --- a/build.sh +++ b/build.sh @@ -1,6 +1,6 @@ if [ ! -d "bin" ]; then mkdir bin else - rm bin/* + rm bin/* fi -g++ -g -O0 -I . -o bin/interrupts interrupts.cpp \ No newline at end of file +g++ -g -O0 -I . -o bin/interrupts interrupts.cpp diff --git a/execution.txt b/execution.txt new file mode 100644 index 0000000..0caaa33 --- /dev/null +++ b/execution.txt @@ -0,0 +1,1119 @@ +0, 14, CPU burst +14, 1, switch to kernel mode +15, 10, context saved +25, 1, find vector 5 in memory position 0x000A +26, 1, load address 0X048B into the PC +27, 40, ISR for device 5 +67, 40, ISR for device 5 +107, 40, ISR for device 5 +147, 40, ISR for device 5 +187, 40, ISR for device 5 +227, 11, ISR for device 5 +238, 1, IRET +239, 78, CPU burst +317, 1, switch to kernel mode +318, 10, context saved +328, 1, find vector 5 in memory position 0x000A +329, 1, load address 0X048B into the PC +330, 40, ISR for device 5 +370, 40, ISR for device 5 +410, 40, ISR for device 5 +450, 40, ISR for device 5 +490, 40, ISR for device 5 +530, 11, ISR for device 5 +541, 1, IRET +542, 84, CPU burst +626, 1, switch to kernel mode +627, 10, context saved +637, 1, find vector 16 in memory position 0x0020 +638, 1, load address 0X02DF into the PC +639, 40, ISR for device 16 +679, 40, ISR for device 16 +719, 40, ISR for device 16 +759, 40, ISR for device 16 +799, 40, ISR for device 16 +839, 40, ISR for device 16 +879, 40, ISR for device 16 +919, 40, ISR for device 16 +959, 40, ISR for device 16 +999, 40, ISR for device 16 +1039, 40, ISR for device 16 +1079, 40, ISR for device 16 +1119, 40, ISR for device 16 +1159, 40, ISR for device 16 +1199, 40, ISR for device 16 +1239, 40, ISR for device 16 +1279, 40, ISR for device 16 +1319, 40, ISR for device 16 +1359, 40, ISR for device 16 +1399, 40, ISR for device 16 +1439, 40, ISR for device 16 +1479, 40, ISR for device 16 +1519, 40, ISR for device 16 +1559, 36, ISR for device 16 +1595, 1, IRET +1596, 70, CPU burst +1666, 1, switch to kernel mode +1667, 10, context saved +1677, 1, find vector 16 in memory position 0x0020 +1678, 1, load address 0X02DF into the PC +1679, 40, ISR for device 16 +1719, 40, ISR for device 16 +1759, 40, ISR for device 16 +1799, 40, ISR for device 16 +1839, 40, ISR for device 16 +1879, 40, ISR for device 16 +1919, 40, ISR for device 16 +1959, 40, ISR for device 16 +1999, 40, ISR for device 16 +2039, 40, ISR for device 16 +2079, 40, ISR for device 16 +2119, 40, ISR for device 16 +2159, 40, ISR for device 16 +2199, 40, ISR for device 16 +2239, 40, ISR for device 16 +2279, 40, ISR for device 16 +2319, 40, ISR for device 16 +2359, 40, ISR for device 16 +2399, 40, ISR for device 16 +2439, 40, ISR for device 16 +2479, 40, ISR for device 16 +2519, 40, ISR for device 16 +2559, 40, ISR for device 16 +2599, 36, ISR for device 16 +2635, 1, IRET +2636, 35, CPU burst +2671, 1, switch to kernel mode +2672, 10, context saved +2682, 1, find vector 9 in memory position 0x0012 +2683, 1, load address 0X036C into the PC +2684, 40, ISR for device 9 +2724, 40, ISR for device 9 +2764, 40, ISR for device 9 +2804, 36, ISR for device 9 +2840, 1, IRET +2841, 51, CPU burst +2892, 1, switch to kernel mode +2893, 10, context saved +2903, 1, find vector 9 in memory position 0x0012 +2904, 1, load address 0X036C into the PC +2905, 40, ISR for device 9 +2945, 40, ISR for device 9 +2985, 40, ISR for device 9 +3025, 36, ISR for device 9 +3061, 1, IRET +3062, 72, CPU burst +3134, 1, switch to kernel mode +3135, 10, context saved +3145, 1, find vector 2 in memory position 0x0004 +3146, 1, load address 0X0695 into the PC +3147, 40, ISR for device 2 +3187, 40, ISR for device 2 +3227, 40, ISR for device 2 +3267, 30, ISR for device 2 +3297, 1, IRET +3298, 99, CPU burst +3397, 1, switch to kernel mode +3398, 10, context saved +3408, 1, find vector 2 in memory position 0x0004 +3409, 1, load address 0X0695 into the PC +3410, 40, ISR for device 2 +3450, 40, ISR for device 2 +3490, 40, ISR for device 2 +3530, 30, ISR for device 2 +3560, 1, IRET +3561, 69, CPU burst +3630, 1, switch to kernel mode +3631, 10, context saved +3641, 1, find vector 11 in memory position 0x0016 +3642, 1, load address 0X01F8 into the PC +3643, 40, ISR for device 11 +3683, 40, ISR for device 11 +3723, 40, ISR for device 11 +3763, 40, ISR for device 11 +3803, 40, ISR for device 11 +3843, 40, ISR for device 11 +3883, 40, ISR for device 11 +3923, 40, ISR for device 11 +3963, 40, ISR for device 11 +4003, 40, ISR for device 11 +4043, 40, ISR for device 11 +4083, 40, ISR for device 11 +4123, 40, ISR for device 11 +4163, 3, ISR for device 11 +4166, 1, IRET +4167, 70, CPU burst +4237, 1, switch to kernel mode +4238, 10, context saved +4248, 1, find vector 11 in memory position 0x0016 +4249, 1, load address 0X01F8 into the PC +4250, 40, ISR for device 11 +4290, 40, ISR for device 11 +4330, 40, ISR for device 11 +4370, 40, ISR for device 11 +4410, 40, ISR for device 11 +4450, 40, ISR for device 11 +4490, 40, ISR for device 11 +4530, 40, ISR for device 11 +4570, 40, ISR for device 11 +4610, 40, ISR for device 11 +4650, 40, ISR for device 11 +4690, 40, ISR for device 11 +4730, 40, ISR for device 11 +4770, 3, ISR for device 11 +4773, 1, IRET +4774, 62, CPU burst +4836, 1, switch to kernel mode +4837, 10, context saved +4847, 1, find vector 19 in memory position 0x0026 +4848, 1, load address 0X0765 into the PC +4849, 40, ISR for device 19 +4889, 40, ISR for device 19 +4929, 40, ISR for device 19 +4969, 40, ISR for device 19 +5009, 40, ISR for device 19 +5049, 40, ISR for device 19 +5089, 40, ISR for device 19 +5129, 40, ISR for device 19 +5169, 40, ISR for device 19 +5209, 40, ISR for device 19 +5249, 40, ISR for device 19 +5289, 40, ISR for device 19 +5329, 40, ISR for device 19 +5369, 40, ISR for device 19 +5409, 40, ISR for device 19 +5449, 40, ISR for device 19 +5489, 12, ISR for device 19 +5501, 1, IRET +5502, 34, CPU burst +5536, 1, switch to kernel mode +5537, 10, context saved +5547, 1, find vector 19 in memory position 0x0026 +5548, 1, load address 0X0765 into the PC +5549, 40, ISR for device 19 +5589, 40, ISR for device 19 +5629, 40, ISR for device 19 +5669, 40, ISR for device 19 +5709, 40, ISR for device 19 +5749, 40, ISR for device 19 +5789, 40, ISR for device 19 +5829, 40, ISR for device 19 +5869, 40, ISR for device 19 +5909, 40, ISR for device 19 +5949, 40, ISR for device 19 +5989, 40, ISR for device 19 +6029, 40, ISR for device 19 +6069, 40, ISR for device 19 +6109, 40, ISR for device 19 +6149, 40, ISR for device 19 +6189, 12, ISR for device 19 +6201, 1, IRET +6202, 85, CPU burst +6287, 1, switch to kernel mode +6288, 10, context saved +6298, 1, find vector 15 in memory position 0x001E +6299, 1, load address 0X0584 into the PC +6300, 40, ISR for device 15 +6340, 28, ISR for device 15 +6368, 1, IRET +6369, 73, CPU burst +6442, 1, switch to kernel mode +6443, 10, context saved +6453, 1, find vector 15 in memory position 0x001E +6454, 1, load address 0X0584 into the PC +6455, 40, ISR for device 15 +6495, 28, ISR for device 15 +6523, 1, IRET +6524, 26, CPU burst +6550, 1, switch to kernel mode +6551, 10, context saved +6561, 1, find vector 10 in memory position 0x0014 +6562, 1, load address 0X07B0 into the PC +6563, 40, ISR for device 10 +6603, 40, ISR for device 10 +6643, 40, ISR for device 10 +6683, 40, ISR for device 10 +6723, 40, ISR for device 10 +6763, 40, ISR for device 10 +6803, 40, ISR for device 10 +6843, 40, ISR for device 10 +6883, 40, ISR for device 10 +6923, 40, ISR for device 10 +6963, 40, ISR for device 10 +7003, 40, ISR for device 10 +7043, 40, ISR for device 10 +7083, 40, ISR for device 10 +7123, 4, ISR for device 10 +7127, 1, IRET +7128, 89, CPU burst +7217, 1, switch to kernel mode +7218, 10, context saved +7228, 1, find vector 10 in memory position 0x0014 +7229, 1, load address 0X07B0 into the PC +7230, 40, ISR for device 10 +7270, 40, ISR for device 10 +7310, 40, ISR for device 10 +7350, 40, ISR for device 10 +7390, 40, ISR for device 10 +7430, 40, ISR for device 10 +7470, 40, ISR for device 10 +7510, 40, ISR for device 10 +7550, 40, ISR for device 10 +7590, 40, ISR for device 10 +7630, 40, ISR for device 10 +7670, 40, ISR for device 10 +7710, 40, ISR for device 10 +7750, 40, ISR for device 10 +7790, 4, ISR for device 10 +7794, 1, IRET +7795, 15, CPU burst +7810, 1, switch to kernel mode +7811, 10, context saved +7821, 1, find vector 7 in memory position 0x000E +7822, 1, load address 0X00BD into the PC +7823, 40, ISR for device 7 +7863, 40, ISR for device 7 +7903, 40, ISR for device 7 +7943, 32, ISR for device 7 +7975, 1, IRET +7976, 24, CPU burst +8000, 1, switch to kernel mode +8001, 10, context saved +8011, 1, find vector 7 in memory position 0x000E +8012, 1, load address 0X00BD into the PC +8013, 40, ISR for device 7 +8053, 40, ISR for device 7 +8093, 40, ISR for device 7 +8133, 32, ISR for device 7 +8165, 1, IRET +8166, 23, CPU burst +8189, 1, switch to kernel mode +8190, 10, context saved +8200, 1, find vector 10 in memory position 0x0014 +8201, 1, load address 0X07B0 into the PC +8202, 40, ISR for device 10 +8242, 40, ISR for device 10 +8282, 40, ISR for device 10 +8322, 40, ISR for device 10 +8362, 40, ISR for device 10 +8402, 40, ISR for device 10 +8442, 40, ISR for device 10 +8482, 40, ISR for device 10 +8522, 40, ISR for device 10 +8562, 40, ISR for device 10 +8602, 40, ISR for device 10 +8642, 40, ISR for device 10 +8682, 40, ISR for device 10 +8722, 40, ISR for device 10 +8762, 4, ISR for device 10 +8766, 1, IRET +8767, 57, CPU burst +8824, 1, switch to kernel mode +8825, 10, context saved +8835, 1, find vector 10 in memory position 0x0014 +8836, 1, load address 0X07B0 into the PC +8837, 40, ISR for device 10 +8877, 40, ISR for device 10 +8917, 40, ISR for device 10 +8957, 40, ISR for device 10 +8997, 40, ISR for device 10 +9037, 40, ISR for device 10 +9077, 40, ISR for device 10 +9117, 40, ISR for device 10 +9157, 40, ISR for device 10 +9197, 40, ISR for device 10 +9237, 40, ISR for device 10 +9277, 40, ISR for device 10 +9317, 40, ISR for device 10 +9357, 40, ISR for device 10 +9397, 4, ISR for device 10 +9401, 1, IRET +9402, 11, CPU burst +9413, 1, switch to kernel mode +9414, 10, context saved +9424, 1, find vector 4 in memory position 0x0008 +9425, 1, load address 0X0292 into the PC +9426, 40, ISR for device 4 +9466, 40, ISR for device 4 +9506, 40, ISR for device 4 +9546, 40, ISR for device 4 +9586, 40, ISR for device 4 +9626, 40, ISR for device 4 +9666, 10, ISR for device 4 +9676, 1, IRET +9677, 100, CPU burst +9777, 1, switch to kernel mode +9778, 10, context saved +9788, 1, find vector 4 in memory position 0x0008 +9789, 1, load address 0X0292 into the PC +9790, 40, ISR for device 4 +9830, 40, ISR for device 4 +9870, 40, ISR for device 4 +9910, 40, ISR for device 4 +9950, 40, ISR for device 4 +9990, 40, ISR for device 4 +10030, 10, ISR for device 4 +10040, 1, IRET +10041, 73, CPU burst +10114, 1, switch to kernel mode +10115, 10, context saved +10125, 1, find vector 11 in memory position 0x0016 +10126, 1, load address 0X01F8 into the PC +10127, 40, ISR for device 11 +10167, 40, ISR for device 11 +10207, 40, ISR for device 11 +10247, 40, ISR for device 11 +10287, 40, ISR for device 11 +10327, 40, ISR for device 11 +10367, 40, ISR for device 11 +10407, 40, ISR for device 11 +10447, 40, ISR for device 11 +10487, 40, ISR for device 11 +10527, 40, ISR for device 11 +10567, 40, ISR for device 11 +10607, 40, ISR for device 11 +10647, 3, ISR for device 11 +10650, 1, IRET +10651, 18, CPU burst +10669, 1, switch to kernel mode +10670, 10, context saved +10680, 1, find vector 11 in memory position 0x0016 +10681, 1, load address 0X01F8 into the PC +10682, 40, ISR for device 11 +10722, 40, ISR for device 11 +10762, 40, ISR for device 11 +10802, 40, ISR for device 11 +10842, 40, ISR for device 11 +10882, 40, ISR for device 11 +10922, 40, ISR for device 11 +10962, 40, ISR for device 11 +11002, 40, ISR for device 11 +11042, 40, ISR for device 11 +11082, 40, ISR for device 11 +11122, 40, ISR for device 11 +11162, 40, ISR for device 11 +11202, 3, ISR for device 11 +11205, 1, IRET +11206, 34, CPU burst +11240, 1, switch to kernel mode +11241, 10, context saved +11251, 1, find vector 4 in memory position 0x0008 +11252, 1, load address 0X0292 into the PC +11253, 40, ISR for device 4 +11293, 40, ISR for device 4 +11333, 40, ISR for device 4 +11373, 40, ISR for device 4 +11413, 40, ISR for device 4 +11453, 40, ISR for device 4 +11493, 10, ISR for device 4 +11503, 1, IRET +11504, 65, CPU burst +11569, 1, switch to kernel mode +11570, 10, context saved +11580, 1, find vector 4 in memory position 0x0008 +11581, 1, load address 0X0292 into the PC +11582, 40, ISR for device 4 +11622, 40, ISR for device 4 +11662, 40, ISR for device 4 +11702, 40, ISR for device 4 +11742, 40, ISR for device 4 +11782, 40, ISR for device 4 +11822, 10, ISR for device 4 +11832, 1, IRET +11833, 77, CPU burst +11910, 1, switch to kernel mode +11911, 10, context saved +11921, 1, find vector 15 in memory position 0x001E +11922, 1, load address 0X0584 into the PC +11923, 40, ISR for device 15 +11963, 28, ISR for device 15 +11991, 1, IRET +11992, 31, CPU burst +12023, 1, switch to kernel mode +12024, 10, context saved +12034, 1, find vector 15 in memory position 0x001E +12035, 1, load address 0X0584 into the PC +12036, 40, ISR for device 15 +12076, 28, ISR for device 15 +12104, 1, IRET +12105, 18, CPU burst +12123, 1, switch to kernel mode +12124, 10, context saved +12134, 1, find vector 6 in memory position 0x000C +12135, 1, load address 0X0639 into the PC +12136, 40, ISR for device 6 +12176, 40, ISR for device 6 +12216, 40, ISR for device 6 +12256, 40, ISR for device 6 +12296, 40, ISR for device 6 +12336, 40, ISR for device 6 +12376, 25, ISR for device 6 +12401, 1, IRET +12402, 84, CPU burst +12486, 1, switch to kernel mode +12487, 10, context saved +12497, 1, find vector 6 in memory position 0x000C +12498, 1, load address 0X0639 into the PC +12499, 40, ISR for device 6 +12539, 40, ISR for device 6 +12579, 40, ISR for device 6 +12619, 40, ISR for device 6 +12659, 40, ISR for device 6 +12699, 40, ISR for device 6 +12739, 25, ISR for device 6 +12764, 1, IRET +12765, 39, CPU burst +12804, 1, switch to kernel mode +12805, 10, context saved +12815, 1, find vector 6 in memory position 0x000C +12816, 1, load address 0X0639 into the PC +12817, 40, ISR for device 6 +12857, 40, ISR for device 6 +12897, 40, ISR for device 6 +12937, 40, ISR for device 6 +12977, 40, ISR for device 6 +13017, 40, ISR for device 6 +13057, 25, ISR for device 6 +13082, 1, IRET +13083, 41, CPU burst +13124, 1, switch to kernel mode +13125, 10, context saved +13135, 1, find vector 6 in memory position 0x000C +13136, 1, load address 0X0639 into the PC +13137, 40, ISR for device 6 +13177, 40, ISR for device 6 +13217, 40, ISR for device 6 +13257, 40, ISR for device 6 +13297, 40, ISR for device 6 +13337, 40, ISR for device 6 +13377, 25, ISR for device 6 +13402, 1, IRET +13403, 95, CPU burst +13498, 1, switch to kernel mode +13499, 10, context saved +13509, 1, find vector 14 in memory position 0x001C +13510, 1, load address 0X0165 into the PC +13511, 40, ISR for device 14 +13551, 40, ISR for device 14 +13591, 40, ISR for device 14 +13631, 40, ISR for device 14 +13671, 40, ISR for device 14 +13711, 40, ISR for device 14 +13751, 40, ISR for device 14 +13791, 40, ISR for device 14 +13831, 40, ISR for device 14 +13871, 40, ISR for device 14 +13911, 40, ISR for device 14 +13951, 16, ISR for device 14 +13967, 1, IRET +13968, 16, CPU burst +13984, 1, switch to kernel mode +13985, 10, context saved +13995, 1, find vector 14 in memory position 0x001C +13996, 1, load address 0X0165 into the PC +13997, 40, ISR for device 14 +14037, 40, ISR for device 14 +14077, 40, ISR for device 14 +14117, 40, ISR for device 14 +14157, 40, ISR for device 14 +14197, 40, ISR for device 14 +14237, 40, ISR for device 14 +14277, 40, ISR for device 14 +14317, 40, ISR for device 14 +14357, 40, ISR for device 14 +14397, 40, ISR for device 14 +14437, 16, ISR for device 14 +14453, 1, IRET +14454, 24, CPU burst +14478, 1, switch to kernel mode +14479, 10, context saved +14489, 1, find vector 2 in memory position 0x0004 +14490, 1, load address 0X0695 into the PC +14491, 40, ISR for device 2 +14531, 40, ISR for device 2 +14571, 40, ISR for device 2 +14611, 30, ISR for device 2 +14641, 1, IRET +14642, 26, CPU burst +14668, 1, switch to kernel mode +14669, 10, context saved +14679, 1, find vector 2 in memory position 0x0004 +14680, 1, load address 0X0695 into the PC +14681, 40, ISR for device 2 +14721, 40, ISR for device 2 +14761, 40, ISR for device 2 +14801, 30, ISR for device 2 +14831, 1, IRET +14832, 90, CPU burst +14922, 1, switch to kernel mode +14923, 10, context saved +14933, 1, find vector 15 in memory position 0x001E +14934, 1, load address 0X0584 into the PC +14935, 40, ISR for device 15 +14975, 28, ISR for device 15 +15003, 1, IRET +15004, 76, CPU burst +15080, 1, switch to kernel mode +15081, 10, context saved +15091, 1, find vector 15 in memory position 0x001E +15092, 1, load address 0X0584 into the PC +15093, 40, ISR for device 15 +15133, 28, ISR for device 15 +15161, 1, IRET +15162, 37, CPU burst +15199, 1, switch to kernel mode +15200, 10, context saved +15210, 1, find vector 14 in memory position 0x001C +15211, 1, load address 0X0165 into the PC +15212, 40, ISR for device 14 +15252, 40, ISR for device 14 +15292, 40, ISR for device 14 +15332, 40, ISR for device 14 +15372, 40, ISR for device 14 +15412, 40, ISR for device 14 +15452, 40, ISR for device 14 +15492, 40, ISR for device 14 +15532, 40, ISR for device 14 +15572, 40, ISR for device 14 +15612, 40, ISR for device 14 +15652, 16, ISR for device 14 +15668, 1, IRET +15669, 28, CPU burst +15697, 1, switch to kernel mode +15698, 10, context saved +15708, 1, find vector 14 in memory position 0x001C +15709, 1, load address 0X0165 into the PC +15710, 40, ISR for device 14 +15750, 40, ISR for device 14 +15790, 40, ISR for device 14 +15830, 40, ISR for device 14 +15870, 40, ISR for device 14 +15910, 40, ISR for device 14 +15950, 40, ISR for device 14 +15990, 40, ISR for device 14 +16030, 40, ISR for device 14 +16070, 40, ISR for device 14 +16110, 40, ISR for device 14 +16150, 16, ISR for device 14 +16166, 1, IRET +16167, 92, CPU burst +16259, 1, switch to kernel mode +16260, 10, context saved +16270, 1, find vector 19 in memory position 0x0026 +16271, 1, load address 0X0765 into the PC +16272, 40, ISR for device 19 +16312, 40, ISR for device 19 +16352, 40, ISR for device 19 +16392, 40, ISR for device 19 +16432, 40, ISR for device 19 +16472, 40, ISR for device 19 +16512, 40, ISR for device 19 +16552, 40, ISR for device 19 +16592, 40, ISR for device 19 +16632, 40, ISR for device 19 +16672, 40, ISR for device 19 +16712, 40, ISR for device 19 +16752, 40, ISR for device 19 +16792, 40, ISR for device 19 +16832, 40, ISR for device 19 +16872, 40, ISR for device 19 +16912, 12, ISR for device 19 +16924, 1, IRET +16925, 24, CPU burst +16949, 1, switch to kernel mode +16950, 10, context saved +16960, 1, find vector 19 in memory position 0x0026 +16961, 1, load address 0X0765 into the PC +16962, 40, ISR for device 19 +17002, 40, ISR for device 19 +17042, 40, ISR for device 19 +17082, 40, ISR for device 19 +17122, 40, ISR for device 19 +17162, 40, ISR for device 19 +17202, 40, ISR for device 19 +17242, 40, ISR for device 19 +17282, 40, ISR for device 19 +17322, 40, ISR for device 19 +17362, 40, ISR for device 19 +17402, 40, ISR for device 19 +17442, 40, ISR for device 19 +17482, 40, ISR for device 19 +17522, 40, ISR for device 19 +17562, 40, ISR for device 19 +17602, 12, ISR for device 19 +17614, 1, IRET +17615, 74, CPU burst +17689, 1, switch to kernel mode +17690, 10, context saved +17700, 1, find vector 16 in memory position 0x0020 +17701, 1, load address 0X02DF into the PC +17702, 40, ISR for device 16 +17742, 40, ISR for device 16 +17782, 40, ISR for device 16 +17822, 40, ISR for device 16 +17862, 40, ISR for device 16 +17902, 40, ISR for device 16 +17942, 40, ISR for device 16 +17982, 40, ISR for device 16 +18022, 40, ISR for device 16 +18062, 40, ISR for device 16 +18102, 40, ISR for device 16 +18142, 40, ISR for device 16 +18182, 40, ISR for device 16 +18222, 40, ISR for device 16 +18262, 40, ISR for device 16 +18302, 40, ISR for device 16 +18342, 40, ISR for device 16 +18382, 40, ISR for device 16 +18422, 40, ISR for device 16 +18462, 40, ISR for device 16 +18502, 40, ISR for device 16 +18542, 40, ISR for device 16 +18582, 40, ISR for device 16 +18622, 36, ISR for device 16 +18658, 1, IRET +18659, 11, CPU burst +18670, 1, switch to kernel mode +18671, 10, context saved +18681, 1, find vector 16 in memory position 0x0020 +18682, 1, load address 0X02DF into the PC +18683, 40, ISR for device 16 +18723, 40, ISR for device 16 +18763, 40, ISR for device 16 +18803, 40, ISR for device 16 +18843, 40, ISR for device 16 +18883, 40, ISR for device 16 +18923, 40, ISR for device 16 +18963, 40, ISR for device 16 +19003, 40, ISR for device 16 +19043, 40, ISR for device 16 +19083, 40, ISR for device 16 +19123, 40, ISR for device 16 +19163, 40, ISR for device 16 +19203, 40, ISR for device 16 +19243, 40, ISR for device 16 +19283, 40, ISR for device 16 +19323, 40, ISR for device 16 +19363, 40, ISR for device 16 +19403, 40, ISR for device 16 +19443, 40, ISR for device 16 +19483, 40, ISR for device 16 +19523, 40, ISR for device 16 +19563, 40, ISR for device 16 +19603, 36, ISR for device 16 +19639, 1, IRET +19640, 26, CPU burst +19666, 1, switch to kernel mode +19667, 10, context saved +19677, 1, find vector 1 in memory position 0x0002 +19678, 1, load address 0X029C into the PC +19679, 40, ISR for device 1 +19719, 40, ISR for device 1 +19759, 20, ISR for device 1 +19779, 1, IRET +19780, 55, CPU burst +19835, 1, switch to kernel mode +19836, 10, context saved +19846, 1, find vector 1 in memory position 0x0002 +19847, 1, load address 0X029C into the PC +19848, 40, ISR for device 1 +19888, 40, ISR for device 1 +19928, 20, ISR for device 1 +19948, 1, IRET +19949, 43, CPU burst +19992, 1, switch to kernel mode +19993, 10, context saved +20003, 1, find vector 19 in memory position 0x0026 +20004, 1, load address 0X0765 into the PC +20005, 40, ISR for device 19 +20045, 40, ISR for device 19 +20085, 40, ISR for device 19 +20125, 40, ISR for device 19 +20165, 40, ISR for device 19 +20205, 40, ISR for device 19 +20245, 40, ISR for device 19 +20285, 40, ISR for device 19 +20325, 40, ISR for device 19 +20365, 40, ISR for device 19 +20405, 40, ISR for device 19 +20445, 40, ISR for device 19 +20485, 40, ISR for device 19 +20525, 40, ISR for device 19 +20565, 40, ISR for device 19 +20605, 40, ISR for device 19 +20645, 12, ISR for device 19 +20657, 1, IRET +20658, 80, CPU burst +20738, 1, switch to kernel mode +20739, 10, context saved +20749, 1, find vector 19 in memory position 0x0026 +20750, 1, load address 0X0765 into the PC +20751, 40, ISR for device 19 +20791, 40, ISR for device 19 +20831, 40, ISR for device 19 +20871, 40, ISR for device 19 +20911, 40, ISR for device 19 +20951, 40, ISR for device 19 +20991, 40, ISR for device 19 +21031, 40, ISR for device 19 +21071, 40, ISR for device 19 +21111, 40, ISR for device 19 +21151, 40, ISR for device 19 +21191, 40, ISR for device 19 +21231, 40, ISR for device 19 +21271, 40, ISR for device 19 +21311, 40, ISR for device 19 +21351, 40, ISR for device 19 +21391, 12, ISR for device 19 +21403, 1, IRET +21404, 95, CPU burst +21499, 1, switch to kernel mode +21500, 10, context saved +21510, 1, find vector 1 in memory position 0x0002 +21511, 1, load address 0X029C into the PC +21512, 40, ISR for device 1 +21552, 40, ISR for device 1 +21592, 20, ISR for device 1 +21612, 1, IRET +21613, 98, CPU burst +21711, 1, switch to kernel mode +21712, 10, context saved +21722, 1, find vector 1 in memory position 0x0002 +21723, 1, load address 0X029C into the PC +21724, 40, ISR for device 1 +21764, 40, ISR for device 1 +21804, 20, ISR for device 1 +21824, 1, IRET +21825, 47, CPU burst +21872, 1, switch to kernel mode +21873, 10, context saved +21883, 1, find vector 8 in memory position 0x0010 +21884, 1, load address 0X06EF into the PC +21885, 40, ISR for device 8 +21925, 40, ISR for device 8 +21965, 40, ISR for device 8 +22005, 40, ISR for device 8 +22045, 40, ISR for device 8 +22085, 40, ISR for device 8 +22125, 40, ISR for device 8 +22165, 40, ISR for device 8 +22205, 40, ISR for device 8 +22245, 40, ISR for device 8 +22285, 40, ISR for device 8 +22325, 40, ISR for device 8 +22365, 40, ISR for device 8 +22405, 40, ISR for device 8 +22445, 40, ISR for device 8 +22485, 40, ISR for device 8 +22525, 40, ISR for device 8 +22565, 40, ISR for device 8 +22605, 40, ISR for device 8 +22645, 40, ISR for device 8 +22685, 40, ISR for device 8 +22725, 40, ISR for device 8 +22765, 40, ISR for device 8 +22805, 40, ISR for device 8 +22845, 40, ISR for device 8 +22885, 1, IRET +22886, 20, CPU burst +22906, 1, switch to kernel mode +22907, 10, context saved +22917, 1, find vector 8 in memory position 0x0010 +22918, 1, load address 0X06EF into the PC +22919, 40, ISR for device 8 +22959, 40, ISR for device 8 +22999, 40, ISR for device 8 +23039, 40, ISR for device 8 +23079, 40, ISR for device 8 +23119, 40, ISR for device 8 +23159, 40, ISR for device 8 +23199, 40, ISR for device 8 +23239, 40, ISR for device 8 +23279, 40, ISR for device 8 +23319, 40, ISR for device 8 +23359, 40, ISR for device 8 +23399, 40, ISR for device 8 +23439, 40, ISR for device 8 +23479, 40, ISR for device 8 +23519, 40, ISR for device 8 +23559, 40, ISR for device 8 +23599, 40, ISR for device 8 +23639, 40, ISR for device 8 +23679, 40, ISR for device 8 +23719, 40, ISR for device 8 +23759, 40, ISR for device 8 +23799, 40, ISR for device 8 +23839, 40, ISR for device 8 +23879, 40, ISR for device 8 +23919, 1, IRET +23920, 29, CPU burst +23949, 99, CPU burst +24048, 38, CPU burst +24086, 1, switch to kernel mode +24087, 10, context saved +24097, 1, find vector 19 in memory position 0x0026 +24098, 1, load address 0X0765 into the PC +24099, 40, ISR for device 19 +24139, 40, ISR for device 19 +24179, 40, ISR for device 19 +24219, 40, ISR for device 19 +24259, 40, ISR for device 19 +24299, 40, ISR for device 19 +24339, 40, ISR for device 19 +24379, 40, ISR for device 19 +24419, 40, ISR for device 19 +24459, 40, ISR for device 19 +24499, 40, ISR for device 19 +24539, 40, ISR for device 19 +24579, 40, ISR for device 19 +24619, 40, ISR for device 19 +24659, 40, ISR for device 19 +24699, 40, ISR for device 19 +24739, 12, ISR for device 19 +24751, 1, IRET +24752, 75, CPU burst +24827, 1, switch to kernel mode +24828, 10, context saved +24838, 1, find vector 19 in memory position 0x0026 +24839, 1, load address 0X0765 into the PC +24840, 40, ISR for device 19 +24880, 40, ISR for device 19 +24920, 40, ISR for device 19 +24960, 40, ISR for device 19 +25000, 40, ISR for device 19 +25040, 40, ISR for device 19 +25080, 40, ISR for device 19 +25120, 40, ISR for device 19 +25160, 40, ISR for device 19 +25200, 40, ISR for device 19 +25240, 40, ISR for device 19 +25280, 40, ISR for device 19 +25320, 40, ISR for device 19 +25360, 40, ISR for device 19 +25400, 40, ISR for device 19 +25440, 40, ISR for device 19 +25480, 12, ISR for device 19 +25492, 1, IRET +25493, 16, CPU burst +25509, 1, switch to kernel mode +25510, 10, context saved +25520, 1, find vector 4 in memory position 0x0008 +25521, 1, load address 0X0292 into the PC +25522, 40, ISR for device 4 +25562, 40, ISR for device 4 +25602, 40, ISR for device 4 +25642, 40, ISR for device 4 +25682, 40, ISR for device 4 +25722, 40, ISR for device 4 +25762, 10, ISR for device 4 +25772, 1, IRET +25773, 23, CPU burst +25796, 1, switch to kernel mode +25797, 10, context saved +25807, 1, find vector 4 in memory position 0x0008 +25808, 1, load address 0X0292 into the PC +25809, 40, ISR for device 4 +25849, 40, ISR for device 4 +25889, 40, ISR for device 4 +25929, 40, ISR for device 4 +25969, 40, ISR for device 4 +26009, 40, ISR for device 4 +26049, 10, ISR for device 4 +26059, 1, IRET +26060, 47, CPU burst +26107, 1, switch to kernel mode +26108, 10, context saved +26118, 1, find vector 11 in memory position 0x0016 +26119, 1, load address 0X01F8 into the PC +26120, 40, ISR for device 11 +26160, 40, ISR for device 11 +26200, 40, ISR for device 11 +26240, 40, ISR for device 11 +26280, 40, ISR for device 11 +26320, 40, ISR for device 11 +26360, 40, ISR for device 11 +26400, 40, ISR for device 11 +26440, 40, ISR for device 11 +26480, 40, ISR for device 11 +26520, 40, ISR for device 11 +26560, 40, ISR for device 11 +26600, 40, ISR for device 11 +26640, 3, ISR for device 11 +26643, 1, IRET +26644, 17, CPU burst +26661, 1, switch to kernel mode +26662, 10, context saved +26672, 1, find vector 11 in memory position 0x0016 +26673, 1, load address 0X01F8 into the PC +26674, 40, ISR for device 11 +26714, 40, ISR for device 11 +26754, 40, ISR for device 11 +26794, 40, ISR for device 11 +26834, 40, ISR for device 11 +26874, 40, ISR for device 11 +26914, 40, ISR for device 11 +26954, 40, ISR for device 11 +26994, 40, ISR for device 11 +27034, 40, ISR for device 11 +27074, 40, ISR for device 11 +27114, 40, ISR for device 11 +27154, 40, ISR for device 11 +27194, 3, ISR for device 11 +27197, 1, IRET +27198, 39, CPU burst +27237, 1, switch to kernel mode +27238, 10, context saved +27248, 1, find vector 19 in memory position 0x0026 +27249, 1, load address 0X0765 into the PC +27250, 40, ISR for device 19 +27290, 40, ISR for device 19 +27330, 40, ISR for device 19 +27370, 40, ISR for device 19 +27410, 40, ISR for device 19 +27450, 40, ISR for device 19 +27490, 40, ISR for device 19 +27530, 40, ISR for device 19 +27570, 40, ISR for device 19 +27610, 40, ISR for device 19 +27650, 40, ISR for device 19 +27690, 40, ISR for device 19 +27730, 40, ISR for device 19 +27770, 40, ISR for device 19 +27810, 40, ISR for device 19 +27850, 40, ISR for device 19 +27890, 12, ISR for device 19 +27902, 1, IRET +27903, 48, CPU burst +27951, 1, switch to kernel mode +27952, 10, context saved +27962, 1, find vector 19 in memory position 0x0026 +27963, 1, load address 0X0765 into the PC +27964, 40, ISR for device 19 +28004, 40, ISR for device 19 +28044, 40, ISR for device 19 +28084, 40, ISR for device 19 +28124, 40, ISR for device 19 +28164, 40, ISR for device 19 +28204, 40, ISR for device 19 +28244, 40, ISR for device 19 +28284, 40, ISR for device 19 +28324, 40, ISR for device 19 +28364, 40, ISR for device 19 +28404, 40, ISR for device 19 +28444, 40, ISR for device 19 +28484, 40, ISR for device 19 +28524, 40, ISR for device 19 +28564, 40, ISR for device 19 +28604, 12, ISR for device 19 +28616, 1, IRET +28617, 45, CPU burst +28662, 1, switch to kernel mode +28663, 10, context saved +28673, 1, find vector 12 in memory position 0x0018 +28674, 1, load address 0X03B9 into the PC +28675, 40, ISR for device 12 +28715, 40, ISR for device 12 +28755, 40, ISR for device 12 +28795, 25, ISR for device 12 +28820, 1, IRET +28821, 83, CPU burst +28904, 1, switch to kernel mode +28905, 10, context saved +28915, 1, find vector 12 in memory position 0x0018 +28916, 1, load address 0X03B9 into the PC +28917, 40, ISR for device 12 +28957, 40, ISR for device 12 +28997, 40, ISR for device 12 +29037, 25, ISR for device 12 +29062, 1, IRET +29063, 68, CPU burst +29131, 100, CPU burst +29231, 61, CPU burst +29292, 1, switch to kernel mode +29293, 10, context saved +29303, 1, find vector 11 in memory position 0x0016 +29304, 1, load address 0X01F8 into the PC +29305, 40, ISR for device 11 +29345, 40, ISR for device 11 +29385, 40, ISR for device 11 +29425, 40, ISR for device 11 +29465, 40, ISR for device 11 +29505, 40, ISR for device 11 +29545, 40, ISR for device 11 +29585, 40, ISR for device 11 +29625, 40, ISR for device 11 +29665, 40, ISR for device 11 +29705, 40, ISR for device 11 +29745, 40, ISR for device 11 +29785, 40, ISR for device 11 +29825, 3, ISR for device 11 +29828, 1, IRET +29829, 96, CPU burst +29925, 1, switch to kernel mode +29926, 10, context saved +29936, 1, find vector 11 in memory position 0x0016 +29937, 1, load address 0X01F8 into the PC +29938, 40, ISR for device 11 +29978, 40, ISR for device 11 +30018, 40, ISR for device 11 +30058, 40, ISR for device 11 +30098, 40, ISR for device 11 +30138, 40, ISR for device 11 +30178, 40, ISR for device 11 +30218, 40, ISR for device 11 +30258, 40, ISR for device 11 +30298, 40, ISR for device 11 +30338, 40, ISR for device 11 +30378, 40, ISR for device 11 +30418, 40, ISR for device 11 +30458, 3, ISR for device 11 +30461, 1, IRET +30462, 88, CPU burst +30550, 1, switch to kernel mode +30551, 10, context saved +30561, 1, find vector 2 in memory position 0x0004 +30562, 1, load address 0X0695 into the PC +30563, 40, ISR for device 2 +30603, 40, ISR for device 2 +30643, 40, ISR for device 2 +30683, 30, ISR for device 2 +30713, 1, IRET +30714, 42, CPU burst +30756, 1, switch to kernel mode +30757, 10, context saved +30767, 1, find vector 2 in memory position 0x0004 +30768, 1, load address 0X0695 into the PC +30769, 40, ISR for device 2 +30809, 40, ISR for device 2 +30849, 40, ISR for device 2 +30889, 30, ISR for device 2 +30919, 1, IRET +30920, 41, CPU burst +30961, 1, switch to kernel mode +30962, 10, context saved +30972, 1, find vector 3 in memory position 0x0006 +30973, 1, load address 0X042B into the PC +30974, 40, ISR for device 3 +31014, 40, ISR for device 3 +31054, 40, ISR for device 3 +31094, 40, ISR for device 3 +31134, 40, ISR for device 3 +31174, 40, ISR for device 3 +31214, 40, ISR for device 3 +31254, 20, ISR for device 3 +31274, 1, IRET +31275, 73, CPU burst +31348, 1, switch to kernel mode +31349, 10, context saved +31359, 1, find vector 3 in memory position 0x0006 +31360, 1, load address 0X042B into the PC +31361, 40, ISR for device 3 +31401, 40, ISR for device 3 +31441, 40, ISR for device 3 +31481, 40, ISR for device 3 +31521, 40, ISR for device 3 +31561, 40, ISR for device 3 +31601, 40, ISR for device 3 +31641, 20, ISR for device 3 +31661, 1, IRET +31662, 52, CPU burst diff --git a/execution_trace_1.txt b/execution_trace_1.txt new file mode 100644 index 0000000..2c55708 --- /dev/null +++ b/execution_trace_1.txt @@ -0,0 +1,139 @@ +0, 75, CPU burst +75, 1, switch to kernel mode +76, 10, context saved +86, 1, find vector 5 in memory position 0x000A +87, 1, load address 0X048B into the PC +88, 40, ISR for device 5 +128, 40, ISR for device 5 +168, 40, ISR for device 5 +208, 40, ISR for device 5 +248, 40, ISR for device 5 +288, 11, ISR for device 5 +299, 1, IRET +300, 84, CPU burst +384, 1, switch to kernel mode +385, 10, context saved +395, 1, find vector 5 in memory position 0x000A +396, 1, load address 0X048B into the PC +397, 40, ISR for device 5 +437, 40, ISR for device 5 +477, 40, ISR for device 5 +517, 40, ISR for device 5 +557, 40, ISR for device 5 +597, 11, ISR for device 5 +608, 1, IRET +609, 22, CPU burst +631, 1, switch to kernel mode +632, 10, context saved +642, 1, find vector 10 in memory position 0x0014 +643, 1, load address 0X07B0 into the PC +644, 40, ISR for device 10 +684, 40, ISR for device 10 +724, 40, ISR for device 10 +764, 40, ISR for device 10 +804, 40, ISR for device 10 +844, 40, ISR for device 10 +884, 40, ISR for device 10 +924, 40, ISR for device 10 +964, 40, ISR for device 10 +1004, 40, ISR for device 10 +1044, 40, ISR for device 10 +1084, 40, ISR for device 10 +1124, 40, ISR for device 10 +1164, 40, ISR for device 10 +1204, 4, ISR for device 10 +1208, 1, IRET +1209, 80, CPU burst +1289, 1, switch to kernel mode +1290, 10, context saved +1300, 1, find vector 10 in memory position 0x0014 +1301, 1, load address 0X07B0 into the PC +1302, 40, ISR for device 10 +1342, 40, ISR for device 10 +1382, 40, ISR for device 10 +1422, 40, ISR for device 10 +1462, 40, ISR for device 10 +1502, 40, ISR for device 10 +1542, 40, ISR for device 10 +1582, 40, ISR for device 10 +1622, 40, ISR for device 10 +1662, 40, ISR for device 10 +1702, 40, ISR for device 10 +1742, 40, ISR for device 10 +1782, 40, ISR for device 10 +1822, 40, ISR for device 10 +1862, 4, ISR for device 10 +1866, 1, IRET +1867, 79, CPU burst +1946, 1, switch to kernel mode +1947, 10, context saved +1957, 1, find vector 6 in memory position 0x000C +1958, 1, load address 0X0639 into the PC +1959, 40, ISR for device 6 +1999, 40, ISR for device 6 +2039, 40, ISR for device 6 +2079, 40, ISR for device 6 +2119, 40, ISR for device 6 +2159, 40, ISR for device 6 +2199, 25, ISR for device 6 +2224, 1, IRET +2225, 68, CPU burst +2293, 1, switch to kernel mode +2294, 10, context saved +2304, 1, find vector 6 in memory position 0x000C +2305, 1, load address 0X0639 into the PC +2306, 40, ISR for device 6 +2346, 40, ISR for device 6 +2386, 40, ISR for device 6 +2426, 40, ISR for device 6 +2466, 40, ISR for device 6 +2506, 40, ISR for device 6 +2546, 25, ISR for device 6 +2571, 1, IRET +2572, 71, CPU burst +2643, 1, switch to kernel mode +2644, 10, context saved +2654, 1, find vector 4 in memory position 0x0008 +2655, 1, load address 0X0292 into the PC +2656, 40, ISR for device 4 +2696, 40, ISR for device 4 +2736, 40, ISR for device 4 +2776, 40, ISR for device 4 +2816, 40, ISR for device 4 +2856, 40, ISR for device 4 +2896, 10, ISR for device 4 +2906, 1, IRET +2907, 97, CPU burst +3004, 1, switch to kernel mode +3005, 10, context saved +3015, 1, find vector 4 in memory position 0x0008 +3016, 1, load address 0X0292 into the PC +3017, 40, ISR for device 4 +3057, 40, ISR for device 4 +3097, 40, ISR for device 4 +3137, 40, ISR for device 4 +3177, 40, ISR for device 4 +3217, 40, ISR for device 4 +3257, 10, ISR for device 4 +3267, 1, IRET +3268, 84, CPU burst +3352, 1, switch to kernel mode +3353, 10, context saved +3363, 1, find vector 7 in memory position 0x000E +3364, 1, load address 0X00BD into the PC +3365, 40, ISR for device 7 +3405, 40, ISR for device 7 +3445, 40, ISR for device 7 +3485, 32, ISR for device 7 +3517, 1, IRET +3518, 38, CPU burst +3556, 1, switch to kernel mode +3557, 10, context saved +3567, 1, find vector 7 in memory position 0x000E +3568, 1, load address 0X00BD into the PC +3569, 40, ISR for device 7 +3609, 40, ISR for device 7 +3649, 40, ISR for device 7 +3689, 32, ISR for device 7 +3721, 1, IRET +3722, 90, CPU burst diff --git a/execution_trace_2.txt b/execution_trace_2.txt new file mode 100644 index 0000000..598dec7 --- /dev/null +++ b/execution_trace_2.txt @@ -0,0 +1,87 @@ +0, 95, CPU burst +95, 1, switch to kernel mode +96, 10, context saved +106, 1, find vector 6 in memory position 0x000C +107, 1, load address 0X0639 into the PC +108, 40, ISR for device 6 +148, 40, ISR for device 6 +188, 40, ISR for device 6 +228, 40, ISR for device 6 +268, 40, ISR for device 6 +308, 40, ISR for device 6 +348, 25, ISR for device 6 +373, 1, IRET +374, 26, CPU burst +400, 1, switch to kernel mode +401, 10, context saved +411, 1, find vector 6 in memory position 0x000C +412, 1, load address 0X0639 into the PC +413, 40, ISR for device 6 +453, 40, ISR for device 6 +493, 40, ISR for device 6 +533, 40, ISR for device 6 +573, 40, ISR for device 6 +613, 40, ISR for device 6 +653, 25, ISR for device 6 +678, 1, IRET +679, 72, CPU burst +751, 1, switch to kernel mode +752, 10, context saved +762, 1, find vector 17 in memory position 0x0022 +763, 1, load address 0X05B3 into the PC +764, 40, ISR for device 17 +804, 40, ISR for device 17 +844, 40, ISR for device 17 +884, 40, ISR for device 17 +924, 40, ISR for device 17 +964, 35, ISR for device 17 +999, 1, IRET +1000, 50, CPU burst +1050, 1, switch to kernel mode +1051, 10, context saved +1061, 1, find vector 17 in memory position 0x0022 +1062, 1, load address 0X05B3 into the PC +1063, 40, ISR for device 17 +1103, 40, ISR for device 17 +1143, 40, ISR for device 17 +1183, 40, ISR for device 17 +1223, 40, ISR for device 17 +1263, 35, ISR for device 17 +1298, 1, IRET +1299, 88, CPU burst +1387, 1, switch to kernel mode +1388, 10, context saved +1398, 1, find vector 14 in memory position 0x001C +1399, 1, load address 0X0165 into the PC +1400, 40, ISR for device 14 +1440, 40, ISR for device 14 +1480, 40, ISR for device 14 +1520, 40, ISR for device 14 +1560, 40, ISR for device 14 +1600, 40, ISR for device 14 +1640, 40, ISR for device 14 +1680, 40, ISR for device 14 +1720, 40, ISR for device 14 +1760, 40, ISR for device 14 +1800, 40, ISR for device 14 +1840, 16, ISR for device 14 +1856, 1, IRET +1857, 31, CPU burst +1888, 1, switch to kernel mode +1889, 10, context saved +1899, 1, find vector 14 in memory position 0x001C +1900, 1, load address 0X0165 into the PC +1901, 40, ISR for device 14 +1941, 40, ISR for device 14 +1981, 40, ISR for device 14 +2021, 40, ISR for device 14 +2061, 40, ISR for device 14 +2101, 40, ISR for device 14 +2141, 40, ISR for device 14 +2181, 40, ISR for device 14 +2221, 40, ISR for device 14 +2261, 40, ISR for device 14 +2301, 40, ISR for device 14 +2341, 16, ISR for device 14 +2357, 1, IRET +2358, 52, CPU burst diff --git a/execution_trace_3.txt b/execution_trace_3.txt new file mode 100644 index 0000000..40b7d22 --- /dev/null +++ b/execution_trace_3.txt @@ -0,0 +1,1017 @@ +0, 49, CPU burst +49, 1, switch to kernel mode +50, 10, context saved +60, 1, find vector 6 in memory position 0x000C +61, 1, load address 0X0639 into the PC +62, 40, ISR for device 6 +102, 40, ISR for device 6 +142, 40, ISR for device 6 +182, 40, ISR for device 6 +222, 40, ISR for device 6 +262, 40, ISR for device 6 +302, 25, ISR for device 6 +327, 1, IRET +328, 99, CPU burst +427, 1, switch to kernel mode +428, 10, context saved +438, 1, find vector 6 in memory position 0x000C +439, 1, load address 0X0639 into the PC +440, 40, ISR for device 6 +480, 40, ISR for device 6 +520, 40, ISR for device 6 +560, 40, ISR for device 6 +600, 40, ISR for device 6 +640, 40, ISR for device 6 +680, 25, ISR for device 6 +705, 1, IRET +706, 72, CPU burst +778, 1, switch to kernel mode +779, 10, context saved +789, 1, find vector 13 in memory position 0x001A +790, 1, load address 0X06C7 into the PC +791, 40, ISR for device 13 +831, 40, ISR for device 13 +871, 40, ISR for device 13 +911, 40, ISR for device 13 +951, 40, ISR for device 13 +991, 40, ISR for device 13 +1031, 40, ISR for device 13 +1071, 40, ISR for device 13 +1111, 40, ISR for device 13 +1151, 40, ISR for device 13 +1191, 40, ISR for device 13 +1231, 40, ISR for device 13 +1271, 40, ISR for device 13 +1311, 40, ISR for device 13 +1351, 40, ISR for device 13 +1391, 36, ISR for device 13 +1427, 1, IRET +1428, 29, CPU burst +1457, 1, switch to kernel mode +1458, 10, context saved +1468, 1, find vector 13 in memory position 0x001A +1469, 1, load address 0X06C7 into the PC +1470, 40, ISR for device 13 +1510, 40, ISR for device 13 +1550, 40, ISR for device 13 +1590, 40, ISR for device 13 +1630, 40, ISR for device 13 +1670, 40, ISR for device 13 +1710, 40, ISR for device 13 +1750, 40, ISR for device 13 +1790, 40, ISR for device 13 +1830, 40, ISR for device 13 +1870, 40, ISR for device 13 +1910, 40, ISR for device 13 +1950, 40, ISR for device 13 +1990, 40, ISR for device 13 +2030, 40, ISR for device 13 +2070, 36, ISR for device 13 +2106, 1, IRET +2107, 19, CPU burst +2126, 1, switch to kernel mode +2127, 10, context saved +2137, 1, find vector 8 in memory position 0x0010 +2138, 1, load address 0X06EF into the PC +2139, 40, ISR for device 8 +2179, 40, ISR for device 8 +2219, 40, ISR for device 8 +2259, 40, ISR for device 8 +2299, 40, ISR for device 8 +2339, 40, ISR for device 8 +2379, 40, ISR for device 8 +2419, 40, ISR for device 8 +2459, 40, ISR for device 8 +2499, 40, ISR for device 8 +2539, 40, ISR for device 8 +2579, 40, ISR for device 8 +2619, 40, ISR for device 8 +2659, 40, ISR for device 8 +2699, 40, ISR for device 8 +2739, 40, ISR for device 8 +2779, 40, ISR for device 8 +2819, 40, ISR for device 8 +2859, 40, ISR for device 8 +2899, 40, ISR for device 8 +2939, 40, ISR for device 8 +2979, 40, ISR for device 8 +3019, 40, ISR for device 8 +3059, 40, ISR for device 8 +3099, 40, ISR for device 8 +3139, 1, IRET +3140, 66, CPU burst +3206, 1, switch to kernel mode +3207, 10, context saved +3217, 1, find vector 8 in memory position 0x0010 +3218, 1, load address 0X06EF into the PC +3219, 40, ISR for device 8 +3259, 40, ISR for device 8 +3299, 40, ISR for device 8 +3339, 40, ISR for device 8 +3379, 40, ISR for device 8 +3419, 40, ISR for device 8 +3459, 40, ISR for device 8 +3499, 40, ISR for device 8 +3539, 40, ISR for device 8 +3579, 40, ISR for device 8 +3619, 40, ISR for device 8 +3659, 40, ISR for device 8 +3699, 40, ISR for device 8 +3739, 40, ISR for device 8 +3779, 40, ISR for device 8 +3819, 40, ISR for device 8 +3859, 40, ISR for device 8 +3899, 40, ISR for device 8 +3939, 40, ISR for device 8 +3979, 40, ISR for device 8 +4019, 40, ISR for device 8 +4059, 40, ISR for device 8 +4099, 40, ISR for device 8 +4139, 40, ISR for device 8 +4179, 40, ISR for device 8 +4219, 1, IRET +4220, 11, CPU burst +4231, 1, switch to kernel mode +4232, 10, context saved +4242, 1, find vector 4 in memory position 0x0008 +4243, 1, load address 0X0292 into the PC +4244, 40, ISR for device 4 +4284, 40, ISR for device 4 +4324, 40, ISR for device 4 +4364, 40, ISR for device 4 +4404, 40, ISR for device 4 +4444, 40, ISR for device 4 +4484, 10, ISR for device 4 +4494, 1, IRET +4495, 21, CPU burst +4516, 1, switch to kernel mode +4517, 10, context saved +4527, 1, find vector 4 in memory position 0x0008 +4528, 1, load address 0X0292 into the PC +4529, 40, ISR for device 4 +4569, 40, ISR for device 4 +4609, 40, ISR for device 4 +4649, 40, ISR for device 4 +4689, 40, ISR for device 4 +4729, 40, ISR for device 4 +4769, 10, ISR for device 4 +4779, 1, IRET +4780, 100, CPU burst +4880, 1, switch to kernel mode +4881, 10, context saved +4891, 1, find vector 18 in memory position 0x0024 +4892, 1, load address 0X060A into the PC +4893, 40, ISR for device 18 +4933, 40, ISR for device 18 +4973, 40, ISR for device 18 +5013, 3, ISR for device 18 +5016, 1, IRET +5017, 41, CPU burst +5058, 1, switch to kernel mode +5059, 10, context saved +5069, 1, find vector 18 in memory position 0x0024 +5070, 1, load address 0X060A into the PC +5071, 40, ISR for device 18 +5111, 40, ISR for device 18 +5151, 40, ISR for device 18 +5191, 3, ISR for device 18 +5194, 1, IRET +5195, 10, CPU burst +5205, 1, switch to kernel mode +5206, 10, context saved +5216, 1, find vector 12 in memory position 0x0018 +5217, 1, load address 0X03B9 into the PC +5218, 40, ISR for device 12 +5258, 40, ISR for device 12 +5298, 40, ISR for device 12 +5338, 25, ISR for device 12 +5363, 1, IRET +5364, 76, CPU burst +5440, 1, switch to kernel mode +5441, 10, context saved +5451, 1, find vector 12 in memory position 0x0018 +5452, 1, load address 0X03B9 into the PC +5453, 40, ISR for device 12 +5493, 40, ISR for device 12 +5533, 40, ISR for device 12 +5573, 25, ISR for device 12 +5598, 1, IRET +5599, 12, CPU burst +5611, 1, switch to kernel mode +5612, 10, context saved +5622, 1, find vector 15 in memory position 0x001E +5623, 1, load address 0X0584 into the PC +5624, 40, ISR for device 15 +5664, 28, ISR for device 15 +5692, 1, IRET +5693, 57, CPU burst +5750, 1, switch to kernel mode +5751, 10, context saved +5761, 1, find vector 15 in memory position 0x001E +5762, 1, load address 0X0584 into the PC +5763, 40, ISR for device 15 +5803, 28, ISR for device 15 +5831, 1, IRET +5832, 93, CPU burst +5925, 1, switch to kernel mode +5926, 10, context saved +5936, 1, find vector 11 in memory position 0x0016 +5937, 1, load address 0X01F8 into the PC +5938, 40, ISR for device 11 +5978, 40, ISR for device 11 +6018, 40, ISR for device 11 +6058, 40, ISR for device 11 +6098, 40, ISR for device 11 +6138, 40, ISR for device 11 +6178, 40, ISR for device 11 +6218, 40, ISR for device 11 +6258, 40, ISR for device 11 +6298, 40, ISR for device 11 +6338, 40, ISR for device 11 +6378, 40, ISR for device 11 +6418, 40, ISR for device 11 +6458, 3, ISR for device 11 +6461, 1, IRET +6462, 56, CPU burst +6518, 1, switch to kernel mode +6519, 10, context saved +6529, 1, find vector 11 in memory position 0x0016 +6530, 1, load address 0X01F8 into the PC +6531, 40, ISR for device 11 +6571, 40, ISR for device 11 +6611, 40, ISR for device 11 +6651, 40, ISR for device 11 +6691, 40, ISR for device 11 +6731, 40, ISR for device 11 +6771, 40, ISR for device 11 +6811, 40, ISR for device 11 +6851, 40, ISR for device 11 +6891, 40, ISR for device 11 +6931, 40, ISR for device 11 +6971, 40, ISR for device 11 +7011, 40, ISR for device 11 +7051, 3, ISR for device 11 +7054, 1, IRET +7055, 38, CPU burst +7093, 1, switch to kernel mode +7094, 10, context saved +7104, 1, find vector 8 in memory position 0x0010 +7105, 1, load address 0X06EF into the PC +7106, 40, ISR for device 8 +7146, 40, ISR for device 8 +7186, 40, ISR for device 8 +7226, 40, ISR for device 8 +7266, 40, ISR for device 8 +7306, 40, ISR for device 8 +7346, 40, ISR for device 8 +7386, 40, ISR for device 8 +7426, 40, ISR for device 8 +7466, 40, ISR for device 8 +7506, 40, ISR for device 8 +7546, 40, ISR for device 8 +7586, 40, ISR for device 8 +7626, 40, ISR for device 8 +7666, 40, ISR for device 8 +7706, 40, ISR for device 8 +7746, 40, ISR for device 8 +7786, 40, ISR for device 8 +7826, 40, ISR for device 8 +7866, 40, ISR for device 8 +7906, 40, ISR for device 8 +7946, 40, ISR for device 8 +7986, 40, ISR for device 8 +8026, 40, ISR for device 8 +8066, 40, ISR for device 8 +8106, 1, IRET +8107, 12, CPU burst +8119, 1, switch to kernel mode +8120, 10, context saved +8130, 1, find vector 8 in memory position 0x0010 +8131, 1, load address 0X06EF into the PC +8132, 40, ISR for device 8 +8172, 40, ISR for device 8 +8212, 40, ISR for device 8 +8252, 40, ISR for device 8 +8292, 40, ISR for device 8 +8332, 40, ISR for device 8 +8372, 40, ISR for device 8 +8412, 40, ISR for device 8 +8452, 40, ISR for device 8 +8492, 40, ISR for device 8 +8532, 40, ISR for device 8 +8572, 40, ISR for device 8 +8612, 40, ISR for device 8 +8652, 40, ISR for device 8 +8692, 40, ISR for device 8 +8732, 40, ISR for device 8 +8772, 40, ISR for device 8 +8812, 40, ISR for device 8 +8852, 40, ISR for device 8 +8892, 40, ISR for device 8 +8932, 40, ISR for device 8 +8972, 40, ISR for device 8 +9012, 40, ISR for device 8 +9052, 40, ISR for device 8 +9092, 40, ISR for device 8 +9132, 1, IRET +9133, 53, CPU burst +9186, 1, switch to kernel mode +9187, 10, context saved +9197, 1, find vector 13 in memory position 0x001A +9198, 1, load address 0X06C7 into the PC +9199, 40, ISR for device 13 +9239, 40, ISR for device 13 +9279, 40, ISR for device 13 +9319, 40, ISR for device 13 +9359, 40, ISR for device 13 +9399, 40, ISR for device 13 +9439, 40, ISR for device 13 +9479, 40, ISR for device 13 +9519, 40, ISR for device 13 +9559, 40, ISR for device 13 +9599, 40, ISR for device 13 +9639, 40, ISR for device 13 +9679, 40, ISR for device 13 +9719, 40, ISR for device 13 +9759, 40, ISR for device 13 +9799, 36, ISR for device 13 +9835, 1, IRET +9836, 10, CPU burst +9846, 1, switch to kernel mode +9847, 10, context saved +9857, 1, find vector 13 in memory position 0x001A +9858, 1, load address 0X06C7 into the PC +9859, 40, ISR for device 13 +9899, 40, ISR for device 13 +9939, 40, ISR for device 13 +9979, 40, ISR for device 13 +10019, 40, ISR for device 13 +10059, 40, ISR for device 13 +10099, 40, ISR for device 13 +10139, 40, ISR for device 13 +10179, 40, ISR for device 13 +10219, 40, ISR for device 13 +10259, 40, ISR for device 13 +10299, 40, ISR for device 13 +10339, 40, ISR for device 13 +10379, 40, ISR for device 13 +10419, 40, ISR for device 13 +10459, 36, ISR for device 13 +10495, 1, IRET +10496, 85, CPU burst +10581, 1, switch to kernel mode +10582, 10, context saved +10592, 1, find vector 19 in memory position 0x0026 +10593, 1, load address 0X0765 into the PC +10594, 40, ISR for device 19 +10634, 40, ISR for device 19 +10674, 40, ISR for device 19 +10714, 40, ISR for device 19 +10754, 40, ISR for device 19 +10794, 40, ISR for device 19 +10834, 40, ISR for device 19 +10874, 40, ISR for device 19 +10914, 40, ISR for device 19 +10954, 40, ISR for device 19 +10994, 40, ISR for device 19 +11034, 40, ISR for device 19 +11074, 40, ISR for device 19 +11114, 40, ISR for device 19 +11154, 40, ISR for device 19 +11194, 40, ISR for device 19 +11234, 12, ISR for device 19 +11246, 1, IRET +11247, 81, CPU burst +11328, 1, switch to kernel mode +11329, 10, context saved +11339, 1, find vector 19 in memory position 0x0026 +11340, 1, load address 0X0765 into the PC +11341, 40, ISR for device 19 +11381, 40, ISR for device 19 +11421, 40, ISR for device 19 +11461, 40, ISR for device 19 +11501, 40, ISR for device 19 +11541, 40, ISR for device 19 +11581, 40, ISR for device 19 +11621, 40, ISR for device 19 +11661, 40, ISR for device 19 +11701, 40, ISR for device 19 +11741, 40, ISR for device 19 +11781, 40, ISR for device 19 +11821, 40, ISR for device 19 +11861, 40, ISR for device 19 +11901, 40, ISR for device 19 +11941, 40, ISR for device 19 +11981, 12, ISR for device 19 +11993, 1, IRET +11994, 19, CPU burst +12013, 1, switch to kernel mode +12014, 10, context saved +12024, 1, find vector 9 in memory position 0x0012 +12025, 1, load address 0X036C into the PC +12026, 40, ISR for device 9 +12066, 40, ISR for device 9 +12106, 40, ISR for device 9 +12146, 36, ISR for device 9 +12182, 1, IRET +12183, 30, CPU burst +12213, 1, switch to kernel mode +12214, 10, context saved +12224, 1, find vector 9 in memory position 0x0012 +12225, 1, load address 0X036C into the PC +12226, 40, ISR for device 9 +12266, 40, ISR for device 9 +12306, 40, ISR for device 9 +12346, 36, ISR for device 9 +12382, 1, IRET +12383, 48, CPU burst +12431, 1, switch to kernel mode +12432, 10, context saved +12442, 1, find vector 3 in memory position 0x0006 +12443, 1, load address 0X042B into the PC +12444, 40, ISR for device 3 +12484, 40, ISR for device 3 +12524, 40, ISR for device 3 +12564, 40, ISR for device 3 +12604, 40, ISR for device 3 +12644, 40, ISR for device 3 +12684, 40, ISR for device 3 +12724, 20, ISR for device 3 +12744, 1, IRET +12745, 35, CPU burst +12780, 1, switch to kernel mode +12781, 10, context saved +12791, 1, find vector 3 in memory position 0x0006 +12792, 1, load address 0X042B into the PC +12793, 40, ISR for device 3 +12833, 40, ISR for device 3 +12873, 40, ISR for device 3 +12913, 40, ISR for device 3 +12953, 40, ISR for device 3 +12993, 40, ISR for device 3 +13033, 40, ISR for device 3 +13073, 20, ISR for device 3 +13093, 1, IRET +13094, 88, CPU burst +13182, 1, switch to kernel mode +13183, 10, context saved +13193, 1, find vector 11 in memory position 0x0016 +13194, 1, load address 0X01F8 into the PC +13195, 40, ISR for device 11 +13235, 40, ISR for device 11 +13275, 40, ISR for device 11 +13315, 40, ISR for device 11 +13355, 40, ISR for device 11 +13395, 40, ISR for device 11 +13435, 40, ISR for device 11 +13475, 40, ISR for device 11 +13515, 40, ISR for device 11 +13555, 40, ISR for device 11 +13595, 40, ISR for device 11 +13635, 40, ISR for device 11 +13675, 40, ISR for device 11 +13715, 3, ISR for device 11 +13718, 1, IRET +13719, 20, CPU burst +13739, 1, switch to kernel mode +13740, 10, context saved +13750, 1, find vector 11 in memory position 0x0016 +13751, 1, load address 0X01F8 into the PC +13752, 40, ISR for device 11 +13792, 40, ISR for device 11 +13832, 40, ISR for device 11 +13872, 40, ISR for device 11 +13912, 40, ISR for device 11 +13952, 40, ISR for device 11 +13992, 40, ISR for device 11 +14032, 40, ISR for device 11 +14072, 40, ISR for device 11 +14112, 40, ISR for device 11 +14152, 40, ISR for device 11 +14192, 40, ISR for device 11 +14232, 40, ISR for device 11 +14272, 3, ISR for device 11 +14275, 1, IRET +14276, 61, CPU burst +14337, 1, switch to kernel mode +14338, 10, context saved +14348, 1, find vector 1 in memory position 0x0002 +14349, 1, load address 0X029C into the PC +14350, 40, ISR for device 1 +14390, 40, ISR for device 1 +14430, 20, ISR for device 1 +14450, 1, IRET +14451, 20, CPU burst +14471, 1, switch to kernel mode +14472, 10, context saved +14482, 1, find vector 1 in memory position 0x0002 +14483, 1, load address 0X029C into the PC +14484, 40, ISR for device 1 +14524, 40, ISR for device 1 +14564, 20, ISR for device 1 +14584, 1, IRET +14585, 48, CPU burst +14633, 1, switch to kernel mode +14634, 10, context saved +14644, 1, find vector 1 in memory position 0x0002 +14645, 1, load address 0X029C into the PC +14646, 40, ISR for device 1 +14686, 40, ISR for device 1 +14726, 20, ISR for device 1 +14746, 1, IRET +14747, 33, CPU burst +14780, 1, switch to kernel mode +14781, 10, context saved +14791, 1, find vector 1 in memory position 0x0002 +14792, 1, load address 0X029C into the PC +14793, 40, ISR for device 1 +14833, 40, ISR for device 1 +14873, 20, ISR for device 1 +14893, 1, IRET +14894, 91, CPU burst +14985, 1, switch to kernel mode +14986, 10, context saved +14996, 1, find vector 14 in memory position 0x001C +14997, 1, load address 0X0165 into the PC +14998, 40, ISR for device 14 +15038, 40, ISR for device 14 +15078, 40, ISR for device 14 +15118, 40, ISR for device 14 +15158, 40, ISR for device 14 +15198, 40, ISR for device 14 +15238, 40, ISR for device 14 +15278, 40, ISR for device 14 +15318, 40, ISR for device 14 +15358, 40, ISR for device 14 +15398, 40, ISR for device 14 +15438, 16, ISR for device 14 +15454, 1, IRET +15455, 41, CPU burst +15496, 1, switch to kernel mode +15497, 10, context saved +15507, 1, find vector 14 in memory position 0x001C +15508, 1, load address 0X0165 into the PC +15509, 40, ISR for device 14 +15549, 40, ISR for device 14 +15589, 40, ISR for device 14 +15629, 40, ISR for device 14 +15669, 40, ISR for device 14 +15709, 40, ISR for device 14 +15749, 40, ISR for device 14 +15789, 40, ISR for device 14 +15829, 40, ISR for device 14 +15869, 40, ISR for device 14 +15909, 40, ISR for device 14 +15949, 16, ISR for device 14 +15965, 1, IRET +15966, 99, CPU burst +16065, 1, switch to kernel mode +16066, 10, context saved +16076, 1, find vector 3 in memory position 0x0006 +16077, 1, load address 0X042B into the PC +16078, 40, ISR for device 3 +16118, 40, ISR for device 3 +16158, 40, ISR for device 3 +16198, 40, ISR for device 3 +16238, 40, ISR for device 3 +16278, 40, ISR for device 3 +16318, 40, ISR for device 3 +16358, 20, ISR for device 3 +16378, 1, IRET +16379, 50, CPU burst +16429, 1, switch to kernel mode +16430, 10, context saved +16440, 1, find vector 3 in memory position 0x0006 +16441, 1, load address 0X042B into the PC +16442, 40, ISR for device 3 +16482, 40, ISR for device 3 +16522, 40, ISR for device 3 +16562, 40, ISR for device 3 +16602, 40, ISR for device 3 +16642, 40, ISR for device 3 +16682, 40, ISR for device 3 +16722, 20, ISR for device 3 +16742, 1, IRET +16743, 22, CPU burst +16765, 1, switch to kernel mode +16766, 10, context saved +16776, 1, find vector 17 in memory position 0x0022 +16777, 1, load address 0X05B3 into the PC +16778, 40, ISR for device 17 +16818, 40, ISR for device 17 +16858, 40, ISR for device 17 +16898, 40, ISR for device 17 +16938, 40, ISR for device 17 +16978, 35, ISR for device 17 +17013, 1, IRET +17014, 66, CPU burst +17080, 1, switch to kernel mode +17081, 10, context saved +17091, 1, find vector 17 in memory position 0x0022 +17092, 1, load address 0X05B3 into the PC +17093, 40, ISR for device 17 +17133, 40, ISR for device 17 +17173, 40, ISR for device 17 +17213, 40, ISR for device 17 +17253, 40, ISR for device 17 +17293, 35, ISR for device 17 +17328, 1, IRET +17329, 55, CPU burst +17384, 1, switch to kernel mode +17385, 10, context saved +17395, 1, find vector 14 in memory position 0x001C +17396, 1, load address 0X0165 into the PC +17397, 40, ISR for device 14 +17437, 40, ISR for device 14 +17477, 40, ISR for device 14 +17517, 40, ISR for device 14 +17557, 40, ISR for device 14 +17597, 40, ISR for device 14 +17637, 40, ISR for device 14 +17677, 40, ISR for device 14 +17717, 40, ISR for device 14 +17757, 40, ISR for device 14 +17797, 40, ISR for device 14 +17837, 16, ISR for device 14 +17853, 1, IRET +17854, 80, CPU burst +17934, 1, switch to kernel mode +17935, 10, context saved +17945, 1, find vector 14 in memory position 0x001C +17946, 1, load address 0X0165 into the PC +17947, 40, ISR for device 14 +17987, 40, ISR for device 14 +18027, 40, ISR for device 14 +18067, 40, ISR for device 14 +18107, 40, ISR for device 14 +18147, 40, ISR for device 14 +18187, 40, ISR for device 14 +18227, 40, ISR for device 14 +18267, 40, ISR for device 14 +18307, 40, ISR for device 14 +18347, 40, ISR for device 14 +18387, 16, ISR for device 14 +18403, 1, IRET +18404, 51, CPU burst +18455, 1, switch to kernel mode +18456, 10, context saved +18466, 1, find vector 15 in memory position 0x001E +18467, 1, load address 0X0584 into the PC +18468, 40, ISR for device 15 +18508, 28, ISR for device 15 +18536, 1, IRET +18537, 61, CPU burst +18598, 1, switch to kernel mode +18599, 10, context saved +18609, 1, find vector 15 in memory position 0x001E +18610, 1, load address 0X0584 into the PC +18611, 40, ISR for device 15 +18651, 28, ISR for device 15 +18679, 1, IRET +18680, 39, CPU burst +18719, 1, switch to kernel mode +18720, 10, context saved +18730, 1, find vector 17 in memory position 0x0022 +18731, 1, load address 0X05B3 into the PC +18732, 40, ISR for device 17 +18772, 40, ISR for device 17 +18812, 40, ISR for device 17 +18852, 40, ISR for device 17 +18892, 40, ISR for device 17 +18932, 35, ISR for device 17 +18967, 1, IRET +18968, 80, CPU burst +19048, 1, switch to kernel mode +19049, 10, context saved +19059, 1, find vector 17 in memory position 0x0022 +19060, 1, load address 0X05B3 into the PC +19061, 40, ISR for device 17 +19101, 40, ISR for device 17 +19141, 40, ISR for device 17 +19181, 40, ISR for device 17 +19221, 40, ISR for device 17 +19261, 35, ISR for device 17 +19296, 1, IRET +19297, 96, CPU burst +19393, 1, switch to kernel mode +19394, 10, context saved +19404, 1, find vector 19 in memory position 0x0026 +19405, 1, load address 0X0765 into the PC +19406, 40, ISR for device 19 +19446, 40, ISR for device 19 +19486, 40, ISR for device 19 +19526, 40, ISR for device 19 +19566, 40, ISR for device 19 +19606, 40, ISR for device 19 +19646, 40, ISR for device 19 +19686, 40, ISR for device 19 +19726, 40, ISR for device 19 +19766, 40, ISR for device 19 +19806, 40, ISR for device 19 +19846, 40, ISR for device 19 +19886, 40, ISR for device 19 +19926, 40, ISR for device 19 +19966, 40, ISR for device 19 +20006, 40, ISR for device 19 +20046, 12, ISR for device 19 +20058, 1, IRET +20059, 88, CPU burst +20147, 1, switch to kernel mode +20148, 10, context saved +20158, 1, find vector 19 in memory position 0x0026 +20159, 1, load address 0X0765 into the PC +20160, 40, ISR for device 19 +20200, 40, ISR for device 19 +20240, 40, ISR for device 19 +20280, 40, ISR for device 19 +20320, 40, ISR for device 19 +20360, 40, ISR for device 19 +20400, 40, ISR for device 19 +20440, 40, ISR for device 19 +20480, 40, ISR for device 19 +20520, 40, ISR for device 19 +20560, 40, ISR for device 19 +20600, 40, ISR for device 19 +20640, 40, ISR for device 19 +20680, 40, ISR for device 19 +20720, 40, ISR for device 19 +20760, 40, ISR for device 19 +20800, 12, ISR for device 19 +20812, 1, IRET +20813, 97, CPU burst +20910, 1, switch to kernel mode +20911, 10, context saved +20921, 1, find vector 8 in memory position 0x0010 +20922, 1, load address 0X06EF into the PC +20923, 40, ISR for device 8 +20963, 40, ISR for device 8 +21003, 40, ISR for device 8 +21043, 40, ISR for device 8 +21083, 40, ISR for device 8 +21123, 40, ISR for device 8 +21163, 40, ISR for device 8 +21203, 40, ISR for device 8 +21243, 40, ISR for device 8 +21283, 40, ISR for device 8 +21323, 40, ISR for device 8 +21363, 40, ISR for device 8 +21403, 40, ISR for device 8 +21443, 40, ISR for device 8 +21483, 40, ISR for device 8 +21523, 40, ISR for device 8 +21563, 40, ISR for device 8 +21603, 40, ISR for device 8 +21643, 40, ISR for device 8 +21683, 40, ISR for device 8 +21723, 40, ISR for device 8 +21763, 40, ISR for device 8 +21803, 40, ISR for device 8 +21843, 40, ISR for device 8 +21883, 40, ISR for device 8 +21923, 1, IRET +21924, 39, CPU burst +21963, 1, switch to kernel mode +21964, 10, context saved +21974, 1, find vector 8 in memory position 0x0010 +21975, 1, load address 0X06EF into the PC +21976, 40, ISR for device 8 +22016, 40, ISR for device 8 +22056, 40, ISR for device 8 +22096, 40, ISR for device 8 +22136, 40, ISR for device 8 +22176, 40, ISR for device 8 +22216, 40, ISR for device 8 +22256, 40, ISR for device 8 +22296, 40, ISR for device 8 +22336, 40, ISR for device 8 +22376, 40, ISR for device 8 +22416, 40, ISR for device 8 +22456, 40, ISR for device 8 +22496, 40, ISR for device 8 +22536, 40, ISR for device 8 +22576, 40, ISR for device 8 +22616, 40, ISR for device 8 +22656, 40, ISR for device 8 +22696, 40, ISR for device 8 +22736, 40, ISR for device 8 +22776, 40, ISR for device 8 +22816, 40, ISR for device 8 +22856, 40, ISR for device 8 +22896, 40, ISR for device 8 +22936, 40, ISR for device 8 +22976, 1, IRET +22977, 30, CPU burst +23007, 1, switch to kernel mode +23008, 10, context saved +23018, 1, find vector 4 in memory position 0x0008 +23019, 1, load address 0X0292 into the PC +23020, 40, ISR for device 4 +23060, 40, ISR for device 4 +23100, 40, ISR for device 4 +23140, 40, ISR for device 4 +23180, 40, ISR for device 4 +23220, 40, ISR for device 4 +23260, 10, ISR for device 4 +23270, 1, IRET +23271, 77, CPU burst +23348, 1, switch to kernel mode +23349, 10, context saved +23359, 1, find vector 4 in memory position 0x0008 +23360, 1, load address 0X0292 into the PC +23361, 40, ISR for device 4 +23401, 40, ISR for device 4 +23441, 40, ISR for device 4 +23481, 40, ISR for device 4 +23521, 40, ISR for device 4 +23561, 40, ISR for device 4 +23601, 10, ISR for device 4 +23611, 1, IRET +23612, 85, CPU burst +23697, 1, switch to kernel mode +23698, 10, context saved +23708, 1, find vector 13 in memory position 0x001A +23709, 1, load address 0X06C7 into the PC +23710, 40, ISR for device 13 +23750, 40, ISR for device 13 +23790, 40, ISR for device 13 +23830, 40, ISR for device 13 +23870, 40, ISR for device 13 +23910, 40, ISR for device 13 +23950, 40, ISR for device 13 +23990, 40, ISR for device 13 +24030, 40, ISR for device 13 +24070, 40, ISR for device 13 +24110, 40, ISR for device 13 +24150, 40, ISR for device 13 +24190, 40, ISR for device 13 +24230, 40, ISR for device 13 +24270, 40, ISR for device 13 +24310, 36, ISR for device 13 +24346, 1, IRET +24347, 47, CPU burst +24394, 1, switch to kernel mode +24395, 10, context saved +24405, 1, find vector 13 in memory position 0x001A +24406, 1, load address 0X06C7 into the PC +24407, 40, ISR for device 13 +24447, 40, ISR for device 13 +24487, 40, ISR for device 13 +24527, 40, ISR for device 13 +24567, 40, ISR for device 13 +24607, 40, ISR for device 13 +24647, 40, ISR for device 13 +24687, 40, ISR for device 13 +24727, 40, ISR for device 13 +24767, 40, ISR for device 13 +24807, 40, ISR for device 13 +24847, 40, ISR for device 13 +24887, 40, ISR for device 13 +24927, 40, ISR for device 13 +24967, 40, ISR for device 13 +25007, 36, ISR for device 13 +25043, 1, IRET +25044, 18, CPU burst +25062, 44, CPU burst +25106, 53, CPU burst +25159, 1, switch to kernel mode +25160, 10, context saved +25170, 1, find vector 6 in memory position 0x000C +25171, 1, load address 0X0639 into the PC +25172, 40, ISR for device 6 +25212, 40, ISR for device 6 +25252, 40, ISR for device 6 +25292, 40, ISR for device 6 +25332, 40, ISR for device 6 +25372, 40, ISR for device 6 +25412, 25, ISR for device 6 +25437, 1, IRET +25438, 69, CPU burst +25507, 1, switch to kernel mode +25508, 10, context saved +25518, 1, find vector 6 in memory position 0x000C +25519, 1, load address 0X0639 into the PC +25520, 40, ISR for device 6 +25560, 40, ISR for device 6 +25600, 40, ISR for device 6 +25640, 40, ISR for device 6 +25680, 40, ISR for device 6 +25720, 40, ISR for device 6 +25760, 25, ISR for device 6 +25785, 1, IRET +25786, 72, CPU burst +25858, 1, switch to kernel mode +25859, 10, context saved +25869, 1, find vector 4 in memory position 0x0008 +25870, 1, load address 0X0292 into the PC +25871, 40, ISR for device 4 +25911, 40, ISR for device 4 +25951, 40, ISR for device 4 +25991, 40, ISR for device 4 +26031, 40, ISR for device 4 +26071, 40, ISR for device 4 +26111, 10, ISR for device 4 +26121, 1, IRET +26122, 25, CPU burst +26147, 1, switch to kernel mode +26148, 10, context saved +26158, 1, find vector 4 in memory position 0x0008 +26159, 1, load address 0X0292 into the PC +26160, 40, ISR for device 4 +26200, 40, ISR for device 4 +26240, 40, ISR for device 4 +26280, 40, ISR for device 4 +26320, 40, ISR for device 4 +26360, 40, ISR for device 4 +26400, 10, ISR for device 4 +26410, 1, IRET +26411, 87, CPU burst +26498, 1, switch to kernel mode +26499, 10, context saved +26509, 1, find vector 5 in memory position 0x000A +26510, 1, load address 0X048B into the PC +26511, 40, ISR for device 5 +26551, 40, ISR for device 5 +26591, 40, ISR for device 5 +26631, 40, ISR for device 5 +26671, 40, ISR for device 5 +26711, 11, ISR for device 5 +26722, 1, IRET +26723, 63, CPU burst +26786, 1, switch to kernel mode +26787, 10, context saved +26797, 1, find vector 5 in memory position 0x000A +26798, 1, load address 0X048B into the PC +26799, 40, ISR for device 5 +26839, 40, ISR for device 5 +26879, 40, ISR for device 5 +26919, 40, ISR for device 5 +26959, 40, ISR for device 5 +26999, 11, ISR for device 5 +27010, 1, IRET +27011, 11, CPU burst +27022, 1, switch to kernel mode +27023, 10, context saved +27033, 1, find vector 15 in memory position 0x001E +27034, 1, load address 0X0584 into the PC +27035, 40, ISR for device 15 +27075, 28, ISR for device 15 +27103, 1, IRET +27104, 74, CPU burst +27178, 1, switch to kernel mode +27179, 10, context saved +27189, 1, find vector 15 in memory position 0x001E +27190, 1, load address 0X0584 into the PC +27191, 40, ISR for device 15 +27231, 28, ISR for device 15 +27259, 1, IRET +27260, 19, CPU burst +27279, 1, switch to kernel mode +27280, 10, context saved +27290, 1, find vector 4 in memory position 0x0008 +27291, 1, load address 0X0292 into the PC +27292, 40, ISR for device 4 +27332, 40, ISR for device 4 +27372, 40, ISR for device 4 +27412, 40, ISR for device 4 +27452, 40, ISR for device 4 +27492, 40, ISR for device 4 +27532, 10, ISR for device 4 +27542, 1, IRET +27543, 69, CPU burst +27612, 1, switch to kernel mode +27613, 10, context saved +27623, 1, find vector 4 in memory position 0x0008 +27624, 1, load address 0X0292 into the PC +27625, 40, ISR for device 4 +27665, 40, ISR for device 4 +27705, 40, ISR for device 4 +27745, 40, ISR for device 4 +27785, 40, ISR for device 4 +27825, 40, ISR for device 4 +27865, 10, ISR for device 4 +27875, 1, IRET +27876, 50, CPU burst +27926, 1, switch to kernel mode +27927, 10, context saved +27937, 1, find vector 5 in memory position 0x000A +27938, 1, load address 0X048B into the PC +27939, 40, ISR for device 5 +27979, 40, ISR for device 5 +28019, 40, ISR for device 5 +28059, 40, ISR for device 5 +28099, 40, ISR for device 5 +28139, 11, ISR for device 5 +28150, 1, IRET +28151, 28, CPU burst +28179, 1, switch to kernel mode +28180, 10, context saved +28190, 1, find vector 5 in memory position 0x000A +28191, 1, load address 0X048B into the PC +28192, 40, ISR for device 5 +28232, 40, ISR for device 5 +28272, 40, ISR for device 5 +28312, 40, ISR for device 5 +28352, 40, ISR for device 5 +28392, 11, ISR for device 5 +28403, 1, IRET +28404, 23, CPU burst diff --git a/execution_trace_4.txt b/execution_trace_4.txt new file mode 100644 index 0000000..dc082a0 --- /dev/null +++ b/execution_trace_4.txt @@ -0,0 +1,997 @@ +0, 86, CPU burst +86, 1, switch to kernel mode +87, 10, context saved +97, 1, find vector 9 in memory position 0x0012 +98, 1, load address 0X036C into the PC +99, 40, ISR for device 9 +139, 40, ISR for device 9 +179, 40, ISR for device 9 +219, 36, ISR for device 9 +255, 1, IRET +256, 61, CPU burst +317, 1, switch to kernel mode +318, 10, context saved +328, 1, find vector 9 in memory position 0x0012 +329, 1, load address 0X036C into the PC +330, 40, ISR for device 9 +370, 40, ISR for device 9 +410, 40, ISR for device 9 +450, 36, ISR for device 9 +486, 1, IRET +487, 27, CPU burst +514, 1, switch to kernel mode +515, 10, context saved +525, 1, find vector 17 in memory position 0x0022 +526, 1, load address 0X05B3 into the PC +527, 40, ISR for device 17 +567, 40, ISR for device 17 +607, 40, ISR for device 17 +647, 40, ISR for device 17 +687, 40, ISR for device 17 +727, 35, ISR for device 17 +762, 1, IRET +763, 19, CPU burst +782, 1, switch to kernel mode +783, 10, context saved +793, 1, find vector 17 in memory position 0x0022 +794, 1, load address 0X05B3 into the PC +795, 40, ISR for device 17 +835, 40, ISR for device 17 +875, 40, ISR for device 17 +915, 40, ISR for device 17 +955, 40, ISR for device 17 +995, 35, ISR for device 17 +1030, 1, IRET +1031, 92, CPU burst +1123, 1, switch to kernel mode +1124, 10, context saved +1134, 1, find vector 8 in memory position 0x0010 +1135, 1, load address 0X06EF into the PC +1136, 40, ISR for device 8 +1176, 40, ISR for device 8 +1216, 40, ISR for device 8 +1256, 40, ISR for device 8 +1296, 40, ISR for device 8 +1336, 40, ISR for device 8 +1376, 40, ISR for device 8 +1416, 40, ISR for device 8 +1456, 40, ISR for device 8 +1496, 40, ISR for device 8 +1536, 40, ISR for device 8 +1576, 40, ISR for device 8 +1616, 40, ISR for device 8 +1656, 40, ISR for device 8 +1696, 40, ISR for device 8 +1736, 40, ISR for device 8 +1776, 40, ISR for device 8 +1816, 40, ISR for device 8 +1856, 40, ISR for device 8 +1896, 40, ISR for device 8 +1936, 40, ISR for device 8 +1976, 40, ISR for device 8 +2016, 40, ISR for device 8 +2056, 40, ISR for device 8 +2096, 40, ISR for device 8 +2136, 1, IRET +2137, 36, CPU burst +2173, 1, switch to kernel mode +2174, 10, context saved +2184, 1, find vector 8 in memory position 0x0010 +2185, 1, load address 0X06EF into the PC +2186, 40, ISR for device 8 +2226, 40, ISR for device 8 +2266, 40, ISR for device 8 +2306, 40, ISR for device 8 +2346, 40, ISR for device 8 +2386, 40, ISR for device 8 +2426, 40, ISR for device 8 +2466, 40, ISR for device 8 +2506, 40, ISR for device 8 +2546, 40, ISR for device 8 +2586, 40, ISR for device 8 +2626, 40, ISR for device 8 +2666, 40, ISR for device 8 +2706, 40, ISR for device 8 +2746, 40, ISR for device 8 +2786, 40, ISR for device 8 +2826, 40, ISR for device 8 +2866, 40, ISR for device 8 +2906, 40, ISR for device 8 +2946, 40, ISR for device 8 +2986, 40, ISR for device 8 +3026, 40, ISR for device 8 +3066, 40, ISR for device 8 +3106, 40, ISR for device 8 +3146, 40, ISR for device 8 +3186, 1, IRET +3187, 19, CPU burst +3206, 1, switch to kernel mode +3207, 10, context saved +3217, 1, find vector 1 in memory position 0x0002 +3218, 1, load address 0X029C into the PC +3219, 40, ISR for device 1 +3259, 40, ISR for device 1 +3299, 20, ISR for device 1 +3319, 1, IRET +3320, 33, CPU burst +3353, 1, switch to kernel mode +3354, 10, context saved +3364, 1, find vector 1 in memory position 0x0002 +3365, 1, load address 0X029C into the PC +3366, 40, ISR for device 1 +3406, 40, ISR for device 1 +3446, 20, ISR for device 1 +3466, 1, IRET +3467, 90, CPU burst +3557, 13, CPU burst +3570, 12, CPU burst +3582, 1, switch to kernel mode +3583, 10, context saved +3593, 1, find vector 13 in memory position 0x001A +3594, 1, load address 0X06C7 into the PC +3595, 40, ISR for device 13 +3635, 40, ISR for device 13 +3675, 40, ISR for device 13 +3715, 40, ISR for device 13 +3755, 40, ISR for device 13 +3795, 40, ISR for device 13 +3835, 40, ISR for device 13 +3875, 40, ISR for device 13 +3915, 40, ISR for device 13 +3955, 40, ISR for device 13 +3995, 40, ISR for device 13 +4035, 40, ISR for device 13 +4075, 40, ISR for device 13 +4115, 40, ISR for device 13 +4155, 40, ISR for device 13 +4195, 36, ISR for device 13 +4231, 1, IRET +4232, 23, CPU burst +4255, 1, switch to kernel mode +4256, 10, context saved +4266, 1, find vector 13 in memory position 0x001A +4267, 1, load address 0X06C7 into the PC +4268, 40, ISR for device 13 +4308, 40, ISR for device 13 +4348, 40, ISR for device 13 +4388, 40, ISR for device 13 +4428, 40, ISR for device 13 +4468, 40, ISR for device 13 +4508, 40, ISR for device 13 +4548, 40, ISR for device 13 +4588, 40, ISR for device 13 +4628, 40, ISR for device 13 +4668, 40, ISR for device 13 +4708, 40, ISR for device 13 +4748, 40, ISR for device 13 +4788, 40, ISR for device 13 +4828, 40, ISR for device 13 +4868, 36, ISR for device 13 +4904, 1, IRET +4905, 51, CPU burst +4956, 1, switch to kernel mode +4957, 10, context saved +4967, 1, find vector 10 in memory position 0x0014 +4968, 1, load address 0X07B0 into the PC +4969, 40, ISR for device 10 +5009, 40, ISR for device 10 +5049, 40, ISR for device 10 +5089, 40, ISR for device 10 +5129, 40, ISR for device 10 +5169, 40, ISR for device 10 +5209, 40, ISR for device 10 +5249, 40, ISR for device 10 +5289, 40, ISR for device 10 +5329, 40, ISR for device 10 +5369, 40, ISR for device 10 +5409, 40, ISR for device 10 +5449, 40, ISR for device 10 +5489, 40, ISR for device 10 +5529, 4, ISR for device 10 +5533, 1, IRET +5534, 49, CPU burst +5583, 1, switch to kernel mode +5584, 10, context saved +5594, 1, find vector 10 in memory position 0x0014 +5595, 1, load address 0X07B0 into the PC +5596, 40, ISR for device 10 +5636, 40, ISR for device 10 +5676, 40, ISR for device 10 +5716, 40, ISR for device 10 +5756, 40, ISR for device 10 +5796, 40, ISR for device 10 +5836, 40, ISR for device 10 +5876, 40, ISR for device 10 +5916, 40, ISR for device 10 +5956, 40, ISR for device 10 +5996, 40, ISR for device 10 +6036, 40, ISR for device 10 +6076, 40, ISR for device 10 +6116, 40, ISR for device 10 +6156, 4, ISR for device 10 +6160, 1, IRET +6161, 87, CPU burst +6248, 1, switch to kernel mode +6249, 10, context saved +6259, 1, find vector 5 in memory position 0x000A +6260, 1, load address 0X048B into the PC +6261, 40, ISR for device 5 +6301, 40, ISR for device 5 +6341, 40, ISR for device 5 +6381, 40, ISR for device 5 +6421, 40, ISR for device 5 +6461, 11, ISR for device 5 +6472, 1, IRET +6473, 55, CPU burst +6528, 1, switch to kernel mode +6529, 10, context saved +6539, 1, find vector 5 in memory position 0x000A +6540, 1, load address 0X048B into the PC +6541, 40, ISR for device 5 +6581, 40, ISR for device 5 +6621, 40, ISR for device 5 +6661, 40, ISR for device 5 +6701, 40, ISR for device 5 +6741, 11, ISR for device 5 +6752, 1, IRET +6753, 17, CPU burst +6770, 1, switch to kernel mode +6771, 10, context saved +6781, 1, find vector 3 in memory position 0x0006 +6782, 1, load address 0X042B into the PC +6783, 40, ISR for device 3 +6823, 40, ISR for device 3 +6863, 40, ISR for device 3 +6903, 40, ISR for device 3 +6943, 40, ISR for device 3 +6983, 40, ISR for device 3 +7023, 40, ISR for device 3 +7063, 20, ISR for device 3 +7083, 1, IRET +7084, 66, CPU burst +7150, 1, switch to kernel mode +7151, 10, context saved +7161, 1, find vector 3 in memory position 0x0006 +7162, 1, load address 0X042B into the PC +7163, 40, ISR for device 3 +7203, 40, ISR for device 3 +7243, 40, ISR for device 3 +7283, 40, ISR for device 3 +7323, 40, ISR for device 3 +7363, 40, ISR for device 3 +7403, 40, ISR for device 3 +7443, 20, ISR for device 3 +7463, 1, IRET +7464, 93, CPU burst +7557, 12, CPU burst +7569, 88, CPU burst +7657, 1, switch to kernel mode +7658, 10, context saved +7668, 1, find vector 14 in memory position 0x001C +7669, 1, load address 0X0165 into the PC +7670, 40, ISR for device 14 +7710, 40, ISR for device 14 +7750, 40, ISR for device 14 +7790, 40, ISR for device 14 +7830, 40, ISR for device 14 +7870, 40, ISR for device 14 +7910, 40, ISR for device 14 +7950, 40, ISR for device 14 +7990, 40, ISR for device 14 +8030, 40, ISR for device 14 +8070, 40, ISR for device 14 +8110, 16, ISR for device 14 +8126, 1, IRET +8127, 79, CPU burst +8206, 1, switch to kernel mode +8207, 10, context saved +8217, 1, find vector 14 in memory position 0x001C +8218, 1, load address 0X0165 into the PC +8219, 40, ISR for device 14 +8259, 40, ISR for device 14 +8299, 40, ISR for device 14 +8339, 40, ISR for device 14 +8379, 40, ISR for device 14 +8419, 40, ISR for device 14 +8459, 40, ISR for device 14 +8499, 40, ISR for device 14 +8539, 40, ISR for device 14 +8579, 40, ISR for device 14 +8619, 40, ISR for device 14 +8659, 16, ISR for device 14 +8675, 1, IRET +8676, 93, CPU burst +8769, 1, switch to kernel mode +8770, 10, context saved +8780, 1, find vector 1 in memory position 0x0002 +8781, 1, load address 0X029C into the PC +8782, 40, ISR for device 1 +8822, 40, ISR for device 1 +8862, 20, ISR for device 1 +8882, 1, IRET +8883, 94, CPU burst +8977, 1, switch to kernel mode +8978, 10, context saved +8988, 1, find vector 1 in memory position 0x0002 +8989, 1, load address 0X029C into the PC +8990, 40, ISR for device 1 +9030, 40, ISR for device 1 +9070, 20, ISR for device 1 +9090, 1, IRET +9091, 68, CPU burst +9159, 1, switch to kernel mode +9160, 10, context saved +9170, 1, find vector 3 in memory position 0x0006 +9171, 1, load address 0X042B into the PC +9172, 40, ISR for device 3 +9212, 40, ISR for device 3 +9252, 40, ISR for device 3 +9292, 40, ISR for device 3 +9332, 40, ISR for device 3 +9372, 40, ISR for device 3 +9412, 40, ISR for device 3 +9452, 20, ISR for device 3 +9472, 1, IRET +9473, 58, CPU burst +9531, 1, switch to kernel mode +9532, 10, context saved +9542, 1, find vector 3 in memory position 0x0006 +9543, 1, load address 0X042B into the PC +9544, 40, ISR for device 3 +9584, 40, ISR for device 3 +9624, 40, ISR for device 3 +9664, 40, ISR for device 3 +9704, 40, ISR for device 3 +9744, 40, ISR for device 3 +9784, 40, ISR for device 3 +9824, 20, ISR for device 3 +9844, 1, IRET +9845, 48, CPU burst +9893, 1, switch to kernel mode +9894, 10, context saved +9904, 1, find vector 14 in memory position 0x001C +9905, 1, load address 0X0165 into the PC +9906, 40, ISR for device 14 +9946, 40, ISR for device 14 +9986, 40, ISR for device 14 +10026, 40, ISR for device 14 +10066, 40, ISR for device 14 +10106, 40, ISR for device 14 +10146, 40, ISR for device 14 +10186, 40, ISR for device 14 +10226, 40, ISR for device 14 +10266, 40, ISR for device 14 +10306, 40, ISR for device 14 +10346, 16, ISR for device 14 +10362, 1, IRET +10363, 87, CPU burst +10450, 1, switch to kernel mode +10451, 10, context saved +10461, 1, find vector 14 in memory position 0x001C +10462, 1, load address 0X0165 into the PC +10463, 40, ISR for device 14 +10503, 40, ISR for device 14 +10543, 40, ISR for device 14 +10583, 40, ISR for device 14 +10623, 40, ISR for device 14 +10663, 40, ISR for device 14 +10703, 40, ISR for device 14 +10743, 40, ISR for device 14 +10783, 40, ISR for device 14 +10823, 40, ISR for device 14 +10863, 40, ISR for device 14 +10903, 16, ISR for device 14 +10919, 1, IRET +10920, 72, CPU burst +10992, 1, switch to kernel mode +10993, 10, context saved +11003, 1, find vector 8 in memory position 0x0010 +11004, 1, load address 0X06EF into the PC +11005, 40, ISR for device 8 +11045, 40, ISR for device 8 +11085, 40, ISR for device 8 +11125, 40, ISR for device 8 +11165, 40, ISR for device 8 +11205, 40, ISR for device 8 +11245, 40, ISR for device 8 +11285, 40, ISR for device 8 +11325, 40, ISR for device 8 +11365, 40, ISR for device 8 +11405, 40, ISR for device 8 +11445, 40, ISR for device 8 +11485, 40, ISR for device 8 +11525, 40, ISR for device 8 +11565, 40, ISR for device 8 +11605, 40, ISR for device 8 +11645, 40, ISR for device 8 +11685, 40, ISR for device 8 +11725, 40, ISR for device 8 +11765, 40, ISR for device 8 +11805, 40, ISR for device 8 +11845, 40, ISR for device 8 +11885, 40, ISR for device 8 +11925, 40, ISR for device 8 +11965, 40, ISR for device 8 +12005, 1, IRET +12006, 82, CPU burst +12088, 1, switch to kernel mode +12089, 10, context saved +12099, 1, find vector 8 in memory position 0x0010 +12100, 1, load address 0X06EF into the PC +12101, 40, ISR for device 8 +12141, 40, ISR for device 8 +12181, 40, ISR for device 8 +12221, 40, ISR for device 8 +12261, 40, ISR for device 8 +12301, 40, ISR for device 8 +12341, 40, ISR for device 8 +12381, 40, ISR for device 8 +12421, 40, ISR for device 8 +12461, 40, ISR for device 8 +12501, 40, ISR for device 8 +12541, 40, ISR for device 8 +12581, 40, ISR for device 8 +12621, 40, ISR for device 8 +12661, 40, ISR for device 8 +12701, 40, ISR for device 8 +12741, 40, ISR for device 8 +12781, 40, ISR for device 8 +12821, 40, ISR for device 8 +12861, 40, ISR for device 8 +12901, 40, ISR for device 8 +12941, 40, ISR for device 8 +12981, 40, ISR for device 8 +13021, 40, ISR for device 8 +13061, 40, ISR for device 8 +13101, 1, IRET +13102, 99, CPU burst +13201, 1, switch to kernel mode +13202, 10, context saved +13212, 1, find vector 18 in memory position 0x0024 +13213, 1, load address 0X060A into the PC +13214, 40, ISR for device 18 +13254, 40, ISR for device 18 +13294, 40, ISR for device 18 +13334, 3, ISR for device 18 +13337, 1, IRET +13338, 65, CPU burst +13403, 1, switch to kernel mode +13404, 10, context saved +13414, 1, find vector 18 in memory position 0x0024 +13415, 1, load address 0X060A into the PC +13416, 40, ISR for device 18 +13456, 40, ISR for device 18 +13496, 40, ISR for device 18 +13536, 3, ISR for device 18 +13539, 1, IRET +13540, 24, CPU burst +13564, 1, switch to kernel mode +13565, 10, context saved +13575, 1, find vector 12 in memory position 0x0018 +13576, 1, load address 0X03B9 into the PC +13577, 40, ISR for device 12 +13617, 40, ISR for device 12 +13657, 40, ISR for device 12 +13697, 25, ISR for device 12 +13722, 1, IRET +13723, 26, CPU burst +13749, 1, switch to kernel mode +13750, 10, context saved +13760, 1, find vector 12 in memory position 0x0018 +13761, 1, load address 0X03B9 into the PC +13762, 40, ISR for device 12 +13802, 40, ISR for device 12 +13842, 40, ISR for device 12 +13882, 25, ISR for device 12 +13907, 1, IRET +13908, 54, CPU burst +13962, 1, switch to kernel mode +13963, 10, context saved +13973, 1, find vector 11 in memory position 0x0016 +13974, 1, load address 0X01F8 into the PC +13975, 40, ISR for device 11 +14015, 40, ISR for device 11 +14055, 40, ISR for device 11 +14095, 40, ISR for device 11 +14135, 40, ISR for device 11 +14175, 40, ISR for device 11 +14215, 40, ISR for device 11 +14255, 40, ISR for device 11 +14295, 40, ISR for device 11 +14335, 40, ISR for device 11 +14375, 40, ISR for device 11 +14415, 40, ISR for device 11 +14455, 40, ISR for device 11 +14495, 3, ISR for device 11 +14498, 1, IRET +14499, 78, CPU burst +14577, 1, switch to kernel mode +14578, 10, context saved +14588, 1, find vector 11 in memory position 0x0016 +14589, 1, load address 0X01F8 into the PC +14590, 40, ISR for device 11 +14630, 40, ISR for device 11 +14670, 40, ISR for device 11 +14710, 40, ISR for device 11 +14750, 40, ISR for device 11 +14790, 40, ISR for device 11 +14830, 40, ISR for device 11 +14870, 40, ISR for device 11 +14910, 40, ISR for device 11 +14950, 40, ISR for device 11 +14990, 40, ISR for device 11 +15030, 40, ISR for device 11 +15070, 40, ISR for device 11 +15110, 3, ISR for device 11 +15113, 1, IRET +15114, 66, CPU burst +15180, 1, switch to kernel mode +15181, 10, context saved +15191, 1, find vector 15 in memory position 0x001E +15192, 1, load address 0X0584 into the PC +15193, 40, ISR for device 15 +15233, 28, ISR for device 15 +15261, 1, IRET +15262, 79, CPU burst +15341, 1, switch to kernel mode +15342, 10, context saved +15352, 1, find vector 15 in memory position 0x001E +15353, 1, load address 0X0584 into the PC +15354, 40, ISR for device 15 +15394, 28, ISR for device 15 +15422, 1, IRET +15423, 82, CPU burst +15505, 1, switch to kernel mode +15506, 10, context saved +15516, 1, find vector 4 in memory position 0x0008 +15517, 1, load address 0X0292 into the PC +15518, 40, ISR for device 4 +15558, 40, ISR for device 4 +15598, 40, ISR for device 4 +15638, 40, ISR for device 4 +15678, 40, ISR for device 4 +15718, 40, ISR for device 4 +15758, 10, ISR for device 4 +15768, 1, IRET +15769, 88, CPU burst +15857, 1, switch to kernel mode +15858, 10, context saved +15868, 1, find vector 4 in memory position 0x0008 +15869, 1, load address 0X0292 into the PC +15870, 40, ISR for device 4 +15910, 40, ISR for device 4 +15950, 40, ISR for device 4 +15990, 40, ISR for device 4 +16030, 40, ISR for device 4 +16070, 40, ISR for device 4 +16110, 10, ISR for device 4 +16120, 1, IRET +16121, 16, CPU burst +16137, 1, switch to kernel mode +16138, 10, context saved +16148, 1, find vector 8 in memory position 0x0010 +16149, 1, load address 0X06EF into the PC +16150, 40, ISR for device 8 +16190, 40, ISR for device 8 +16230, 40, ISR for device 8 +16270, 40, ISR for device 8 +16310, 40, ISR for device 8 +16350, 40, ISR for device 8 +16390, 40, ISR for device 8 +16430, 40, ISR for device 8 +16470, 40, ISR for device 8 +16510, 40, ISR for device 8 +16550, 40, ISR for device 8 +16590, 40, ISR for device 8 +16630, 40, ISR for device 8 +16670, 40, ISR for device 8 +16710, 40, ISR for device 8 +16750, 40, ISR for device 8 +16790, 40, ISR for device 8 +16830, 40, ISR for device 8 +16870, 40, ISR for device 8 +16910, 40, ISR for device 8 +16950, 40, ISR for device 8 +16990, 40, ISR for device 8 +17030, 40, ISR for device 8 +17070, 40, ISR for device 8 +17110, 40, ISR for device 8 +17150, 1, IRET +17151, 26, CPU burst +17177, 1, switch to kernel mode +17178, 10, context saved +17188, 1, find vector 8 in memory position 0x0010 +17189, 1, load address 0X06EF into the PC +17190, 40, ISR for device 8 +17230, 40, ISR for device 8 +17270, 40, ISR for device 8 +17310, 40, ISR for device 8 +17350, 40, ISR for device 8 +17390, 40, ISR for device 8 +17430, 40, ISR for device 8 +17470, 40, ISR for device 8 +17510, 40, ISR for device 8 +17550, 40, ISR for device 8 +17590, 40, ISR for device 8 +17630, 40, ISR for device 8 +17670, 40, ISR for device 8 +17710, 40, ISR for device 8 +17750, 40, ISR for device 8 +17790, 40, ISR for device 8 +17830, 40, ISR for device 8 +17870, 40, ISR for device 8 +17910, 40, ISR for device 8 +17950, 40, ISR for device 8 +17990, 40, ISR for device 8 +18030, 40, ISR for device 8 +18070, 40, ISR for device 8 +18110, 40, ISR for device 8 +18150, 40, ISR for device 8 +18190, 1, IRET +18191, 22, CPU burst +18213, 1, switch to kernel mode +18214, 10, context saved +18224, 1, find vector 18 in memory position 0x0024 +18225, 1, load address 0X060A into the PC +18226, 40, ISR for device 18 +18266, 40, ISR for device 18 +18306, 40, ISR for device 18 +18346, 3, ISR for device 18 +18349, 1, IRET +18350, 95, CPU burst +18445, 1, switch to kernel mode +18446, 10, context saved +18456, 1, find vector 18 in memory position 0x0024 +18457, 1, load address 0X060A into the PC +18458, 40, ISR for device 18 +18498, 40, ISR for device 18 +18538, 40, ISR for device 18 +18578, 3, ISR for device 18 +18581, 1, IRET +18582, 63, CPU burst +18645, 1, switch to kernel mode +18646, 10, context saved +18656, 1, find vector 18 in memory position 0x0024 +18657, 1, load address 0X060A into the PC +18658, 40, ISR for device 18 +18698, 40, ISR for device 18 +18738, 40, ISR for device 18 +18778, 3, ISR for device 18 +18781, 1, IRET +18782, 18, CPU burst +18800, 1, switch to kernel mode +18801, 10, context saved +18811, 1, find vector 18 in memory position 0x0024 +18812, 1, load address 0X060A into the PC +18813, 40, ISR for device 18 +18853, 40, ISR for device 18 +18893, 40, ISR for device 18 +18933, 3, ISR for device 18 +18936, 1, IRET +18937, 50, CPU burst +18987, 1, switch to kernel mode +18988, 10, context saved +18998, 1, find vector 14 in memory position 0x001C +18999, 1, load address 0X0165 into the PC +19000, 40, ISR for device 14 +19040, 40, ISR for device 14 +19080, 40, ISR for device 14 +19120, 40, ISR for device 14 +19160, 40, ISR for device 14 +19200, 40, ISR for device 14 +19240, 40, ISR for device 14 +19280, 40, ISR for device 14 +19320, 40, ISR for device 14 +19360, 40, ISR for device 14 +19400, 40, ISR for device 14 +19440, 16, ISR for device 14 +19456, 1, IRET +19457, 56, CPU burst +19513, 1, switch to kernel mode +19514, 10, context saved +19524, 1, find vector 14 in memory position 0x001C +19525, 1, load address 0X0165 into the PC +19526, 40, ISR for device 14 +19566, 40, ISR for device 14 +19606, 40, ISR for device 14 +19646, 40, ISR for device 14 +19686, 40, ISR for device 14 +19726, 40, ISR for device 14 +19766, 40, ISR for device 14 +19806, 40, ISR for device 14 +19846, 40, ISR for device 14 +19886, 40, ISR for device 14 +19926, 40, ISR for device 14 +19966, 16, ISR for device 14 +19982, 1, IRET +19983, 83, CPU burst +20066, 1, switch to kernel mode +20067, 10, context saved +20077, 1, find vector 16 in memory position 0x0020 +20078, 1, load address 0X02DF into the PC +20079, 40, ISR for device 16 +20119, 40, ISR for device 16 +20159, 40, ISR for device 16 +20199, 40, ISR for device 16 +20239, 40, ISR for device 16 +20279, 40, ISR for device 16 +20319, 40, ISR for device 16 +20359, 40, ISR for device 16 +20399, 40, ISR for device 16 +20439, 40, ISR for device 16 +20479, 40, ISR for device 16 +20519, 40, ISR for device 16 +20559, 40, ISR for device 16 +20599, 40, ISR for device 16 +20639, 40, ISR for device 16 +20679, 40, ISR for device 16 +20719, 40, ISR for device 16 +20759, 40, ISR for device 16 +20799, 40, ISR for device 16 +20839, 40, ISR for device 16 +20879, 40, ISR for device 16 +20919, 40, ISR for device 16 +20959, 40, ISR for device 16 +20999, 36, ISR for device 16 +21035, 1, IRET +21036, 23, CPU burst +21059, 1, switch to kernel mode +21060, 10, context saved +21070, 1, find vector 16 in memory position 0x0020 +21071, 1, load address 0X02DF into the PC +21072, 40, ISR for device 16 +21112, 40, ISR for device 16 +21152, 40, ISR for device 16 +21192, 40, ISR for device 16 +21232, 40, ISR for device 16 +21272, 40, ISR for device 16 +21312, 40, ISR for device 16 +21352, 40, ISR for device 16 +21392, 40, ISR for device 16 +21432, 40, ISR for device 16 +21472, 40, ISR for device 16 +21512, 40, ISR for device 16 +21552, 40, ISR for device 16 +21592, 40, ISR for device 16 +21632, 40, ISR for device 16 +21672, 40, ISR for device 16 +21712, 40, ISR for device 16 +21752, 40, ISR for device 16 +21792, 40, ISR for device 16 +21832, 40, ISR for device 16 +21872, 40, ISR for device 16 +21912, 40, ISR for device 16 +21952, 40, ISR for device 16 +21992, 36, ISR for device 16 +22028, 1, IRET +22029, 80, CPU burst +22109, 1, switch to kernel mode +22110, 10, context saved +22120, 1, find vector 15 in memory position 0x001E +22121, 1, load address 0X0584 into the PC +22122, 40, ISR for device 15 +22162, 28, ISR for device 15 +22190, 1, IRET +22191, 98, CPU burst +22289, 1, switch to kernel mode +22290, 10, context saved +22300, 1, find vector 15 in memory position 0x001E +22301, 1, load address 0X0584 into the PC +22302, 40, ISR for device 15 +22342, 28, ISR for device 15 +22370, 1, IRET +22371, 77, CPU burst +22448, 1, switch to kernel mode +22449, 10, context saved +22459, 1, find vector 14 in memory position 0x001C +22460, 1, load address 0X0165 into the PC +22461, 40, ISR for device 14 +22501, 40, ISR for device 14 +22541, 40, ISR for device 14 +22581, 40, ISR for device 14 +22621, 40, ISR for device 14 +22661, 40, ISR for device 14 +22701, 40, ISR for device 14 +22741, 40, ISR for device 14 +22781, 40, ISR for device 14 +22821, 40, ISR for device 14 +22861, 40, ISR for device 14 +22901, 16, ISR for device 14 +22917, 1, IRET +22918, 11, CPU burst +22929, 1, switch to kernel mode +22930, 10, context saved +22940, 1, find vector 14 in memory position 0x001C +22941, 1, load address 0X0165 into the PC +22942, 40, ISR for device 14 +22982, 40, ISR for device 14 +23022, 40, ISR for device 14 +23062, 40, ISR for device 14 +23102, 40, ISR for device 14 +23142, 40, ISR for device 14 +23182, 40, ISR for device 14 +23222, 40, ISR for device 14 +23262, 40, ISR for device 14 +23302, 40, ISR for device 14 +23342, 40, ISR for device 14 +23382, 16, ISR for device 14 +23398, 1, IRET +23399, 61, CPU burst +23460, 1, switch to kernel mode +23461, 10, context saved +23471, 1, find vector 14 in memory position 0x001C +23472, 1, load address 0X0165 into the PC +23473, 40, ISR for device 14 +23513, 40, ISR for device 14 +23553, 40, ISR for device 14 +23593, 40, ISR for device 14 +23633, 40, ISR for device 14 +23673, 40, ISR for device 14 +23713, 40, ISR for device 14 +23753, 40, ISR for device 14 +23793, 40, ISR for device 14 +23833, 40, ISR for device 14 +23873, 40, ISR for device 14 +23913, 16, ISR for device 14 +23929, 1, IRET +23930, 34, CPU burst +23964, 1, switch to kernel mode +23965, 10, context saved +23975, 1, find vector 14 in memory position 0x001C +23976, 1, load address 0X0165 into the PC +23977, 40, ISR for device 14 +24017, 40, ISR for device 14 +24057, 40, ISR for device 14 +24097, 40, ISR for device 14 +24137, 40, ISR for device 14 +24177, 40, ISR for device 14 +24217, 40, ISR for device 14 +24257, 40, ISR for device 14 +24297, 40, ISR for device 14 +24337, 40, ISR for device 14 +24377, 40, ISR for device 14 +24417, 16, ISR for device 14 +24433, 1, IRET +24434, 32, CPU burst +24466, 1, switch to kernel mode +24467, 10, context saved +24477, 1, find vector 7 in memory position 0x000E +24478, 1, load address 0X00BD into the PC +24479, 40, ISR for device 7 +24519, 40, ISR for device 7 +24559, 40, ISR for device 7 +24599, 32, ISR for device 7 +24631, 1, IRET +24632, 69, CPU burst +24701, 1, switch to kernel mode +24702, 10, context saved +24712, 1, find vector 7 in memory position 0x000E +24713, 1, load address 0X00BD into the PC +24714, 40, ISR for device 7 +24754, 40, ISR for device 7 +24794, 40, ISR for device 7 +24834, 32, ISR for device 7 +24866, 1, IRET +24867, 79, CPU burst +24946, 41, CPU burst +24987, 63, CPU burst +25050, 1, switch to kernel mode +25051, 10, context saved +25061, 1, find vector 7 in memory position 0x000E +25062, 1, load address 0X00BD into the PC +25063, 40, ISR for device 7 +25103, 40, ISR for device 7 +25143, 40, ISR for device 7 +25183, 32, ISR for device 7 +25215, 1, IRET +25216, 27, CPU burst +25243, 1, switch to kernel mode +25244, 10, context saved +25254, 1, find vector 7 in memory position 0x000E +25255, 1, load address 0X00BD into the PC +25256, 40, ISR for device 7 +25296, 40, ISR for device 7 +25336, 40, ISR for device 7 +25376, 32, ISR for device 7 +25408, 1, IRET +25409, 85, CPU burst +25494, 1, switch to kernel mode +25495, 10, context saved +25505, 1, find vector 11 in memory position 0x0016 +25506, 1, load address 0X01F8 into the PC +25507, 40, ISR for device 11 +25547, 40, ISR for device 11 +25587, 40, ISR for device 11 +25627, 40, ISR for device 11 +25667, 40, ISR for device 11 +25707, 40, ISR for device 11 +25747, 40, ISR for device 11 +25787, 40, ISR for device 11 +25827, 40, ISR for device 11 +25867, 40, ISR for device 11 +25907, 40, ISR for device 11 +25947, 40, ISR for device 11 +25987, 40, ISR for device 11 +26027, 3, ISR for device 11 +26030, 1, IRET +26031, 68, CPU burst +26099, 1, switch to kernel mode +26100, 10, context saved +26110, 1, find vector 11 in memory position 0x0016 +26111, 1, load address 0X01F8 into the PC +26112, 40, ISR for device 11 +26152, 40, ISR for device 11 +26192, 40, ISR for device 11 +26232, 40, ISR for device 11 +26272, 40, ISR for device 11 +26312, 40, ISR for device 11 +26352, 40, ISR for device 11 +26392, 40, ISR for device 11 +26432, 40, ISR for device 11 +26472, 40, ISR for device 11 +26512, 40, ISR for device 11 +26552, 40, ISR for device 11 +26592, 40, ISR for device 11 +26632, 3, ISR for device 11 +26635, 1, IRET +26636, 23, CPU burst +26659, 1, switch to kernel mode +26660, 10, context saved +26670, 1, find vector 14 in memory position 0x001C +26671, 1, load address 0X0165 into the PC +26672, 40, ISR for device 14 +26712, 40, ISR for device 14 +26752, 40, ISR for device 14 +26792, 40, ISR for device 14 +26832, 40, ISR for device 14 +26872, 40, ISR for device 14 +26912, 40, ISR for device 14 +26952, 40, ISR for device 14 +26992, 40, ISR for device 14 +27032, 40, ISR for device 14 +27072, 40, ISR for device 14 +27112, 16, ISR for device 14 +27128, 1, IRET +27129, 22, CPU burst +27151, 1, switch to kernel mode +27152, 10, context saved +27162, 1, find vector 14 in memory position 0x001C +27163, 1, load address 0X0165 into the PC +27164, 40, ISR for device 14 +27204, 40, ISR for device 14 +27244, 40, ISR for device 14 +27284, 40, ISR for device 14 +27324, 40, ISR for device 14 +27364, 40, ISR for device 14 +27404, 40, ISR for device 14 +27444, 40, ISR for device 14 +27484, 40, ISR for device 14 +27524, 40, ISR for device 14 +27564, 40, ISR for device 14 +27604, 16, ISR for device 14 +27620, 1, IRET +27621, 29, CPU burst +27650, 1, switch to kernel mode +27651, 10, context saved +27661, 1, find vector 17 in memory position 0x0022 +27662, 1, load address 0X05B3 into the PC +27663, 40, ISR for device 17 +27703, 40, ISR for device 17 +27743, 40, ISR for device 17 +27783, 40, ISR for device 17 +27823, 40, ISR for device 17 +27863, 35, ISR for device 17 +27898, 1, IRET +27899, 99, CPU burst +27998, 1, switch to kernel mode +27999, 10, context saved +28009, 1, find vector 17 in memory position 0x0022 +28010, 1, load address 0X05B3 into the PC +28011, 40, ISR for device 17 +28051, 40, ISR for device 17 +28091, 40, ISR for device 17 +28131, 40, ISR for device 17 +28171, 40, ISR for device 17 +28211, 35, ISR for device 17 +28246, 1, IRET +28247, 46, CPU burst diff --git a/execution_trace_5.txt b/execution_trace_5.txt new file mode 100644 index 0000000..0caaa33 --- /dev/null +++ b/execution_trace_5.txt @@ -0,0 +1,1119 @@ +0, 14, CPU burst +14, 1, switch to kernel mode +15, 10, context saved +25, 1, find vector 5 in memory position 0x000A +26, 1, load address 0X048B into the PC +27, 40, ISR for device 5 +67, 40, ISR for device 5 +107, 40, ISR for device 5 +147, 40, ISR for device 5 +187, 40, ISR for device 5 +227, 11, ISR for device 5 +238, 1, IRET +239, 78, CPU burst +317, 1, switch to kernel mode +318, 10, context saved +328, 1, find vector 5 in memory position 0x000A +329, 1, load address 0X048B into the PC +330, 40, ISR for device 5 +370, 40, ISR for device 5 +410, 40, ISR for device 5 +450, 40, ISR for device 5 +490, 40, ISR for device 5 +530, 11, ISR for device 5 +541, 1, IRET +542, 84, CPU burst +626, 1, switch to kernel mode +627, 10, context saved +637, 1, find vector 16 in memory position 0x0020 +638, 1, load address 0X02DF into the PC +639, 40, ISR for device 16 +679, 40, ISR for device 16 +719, 40, ISR for device 16 +759, 40, ISR for device 16 +799, 40, ISR for device 16 +839, 40, ISR for device 16 +879, 40, ISR for device 16 +919, 40, ISR for device 16 +959, 40, ISR for device 16 +999, 40, ISR for device 16 +1039, 40, ISR for device 16 +1079, 40, ISR for device 16 +1119, 40, ISR for device 16 +1159, 40, ISR for device 16 +1199, 40, ISR for device 16 +1239, 40, ISR for device 16 +1279, 40, ISR for device 16 +1319, 40, ISR for device 16 +1359, 40, ISR for device 16 +1399, 40, ISR for device 16 +1439, 40, ISR for device 16 +1479, 40, ISR for device 16 +1519, 40, ISR for device 16 +1559, 36, ISR for device 16 +1595, 1, IRET +1596, 70, CPU burst +1666, 1, switch to kernel mode +1667, 10, context saved +1677, 1, find vector 16 in memory position 0x0020 +1678, 1, load address 0X02DF into the PC +1679, 40, ISR for device 16 +1719, 40, ISR for device 16 +1759, 40, ISR for device 16 +1799, 40, ISR for device 16 +1839, 40, ISR for device 16 +1879, 40, ISR for device 16 +1919, 40, ISR for device 16 +1959, 40, ISR for device 16 +1999, 40, ISR for device 16 +2039, 40, ISR for device 16 +2079, 40, ISR for device 16 +2119, 40, ISR for device 16 +2159, 40, ISR for device 16 +2199, 40, ISR for device 16 +2239, 40, ISR for device 16 +2279, 40, ISR for device 16 +2319, 40, ISR for device 16 +2359, 40, ISR for device 16 +2399, 40, ISR for device 16 +2439, 40, ISR for device 16 +2479, 40, ISR for device 16 +2519, 40, ISR for device 16 +2559, 40, ISR for device 16 +2599, 36, ISR for device 16 +2635, 1, IRET +2636, 35, CPU burst +2671, 1, switch to kernel mode +2672, 10, context saved +2682, 1, find vector 9 in memory position 0x0012 +2683, 1, load address 0X036C into the PC +2684, 40, ISR for device 9 +2724, 40, ISR for device 9 +2764, 40, ISR for device 9 +2804, 36, ISR for device 9 +2840, 1, IRET +2841, 51, CPU burst +2892, 1, switch to kernel mode +2893, 10, context saved +2903, 1, find vector 9 in memory position 0x0012 +2904, 1, load address 0X036C into the PC +2905, 40, ISR for device 9 +2945, 40, ISR for device 9 +2985, 40, ISR for device 9 +3025, 36, ISR for device 9 +3061, 1, IRET +3062, 72, CPU burst +3134, 1, switch to kernel mode +3135, 10, context saved +3145, 1, find vector 2 in memory position 0x0004 +3146, 1, load address 0X0695 into the PC +3147, 40, ISR for device 2 +3187, 40, ISR for device 2 +3227, 40, ISR for device 2 +3267, 30, ISR for device 2 +3297, 1, IRET +3298, 99, CPU burst +3397, 1, switch to kernel mode +3398, 10, context saved +3408, 1, find vector 2 in memory position 0x0004 +3409, 1, load address 0X0695 into the PC +3410, 40, ISR for device 2 +3450, 40, ISR for device 2 +3490, 40, ISR for device 2 +3530, 30, ISR for device 2 +3560, 1, IRET +3561, 69, CPU burst +3630, 1, switch to kernel mode +3631, 10, context saved +3641, 1, find vector 11 in memory position 0x0016 +3642, 1, load address 0X01F8 into the PC +3643, 40, ISR for device 11 +3683, 40, ISR for device 11 +3723, 40, ISR for device 11 +3763, 40, ISR for device 11 +3803, 40, ISR for device 11 +3843, 40, ISR for device 11 +3883, 40, ISR for device 11 +3923, 40, ISR for device 11 +3963, 40, ISR for device 11 +4003, 40, ISR for device 11 +4043, 40, ISR for device 11 +4083, 40, ISR for device 11 +4123, 40, ISR for device 11 +4163, 3, ISR for device 11 +4166, 1, IRET +4167, 70, CPU burst +4237, 1, switch to kernel mode +4238, 10, context saved +4248, 1, find vector 11 in memory position 0x0016 +4249, 1, load address 0X01F8 into the PC +4250, 40, ISR for device 11 +4290, 40, ISR for device 11 +4330, 40, ISR for device 11 +4370, 40, ISR for device 11 +4410, 40, ISR for device 11 +4450, 40, ISR for device 11 +4490, 40, ISR for device 11 +4530, 40, ISR for device 11 +4570, 40, ISR for device 11 +4610, 40, ISR for device 11 +4650, 40, ISR for device 11 +4690, 40, ISR for device 11 +4730, 40, ISR for device 11 +4770, 3, ISR for device 11 +4773, 1, IRET +4774, 62, CPU burst +4836, 1, switch to kernel mode +4837, 10, context saved +4847, 1, find vector 19 in memory position 0x0026 +4848, 1, load address 0X0765 into the PC +4849, 40, ISR for device 19 +4889, 40, ISR for device 19 +4929, 40, ISR for device 19 +4969, 40, ISR for device 19 +5009, 40, ISR for device 19 +5049, 40, ISR for device 19 +5089, 40, ISR for device 19 +5129, 40, ISR for device 19 +5169, 40, ISR for device 19 +5209, 40, ISR for device 19 +5249, 40, ISR for device 19 +5289, 40, ISR for device 19 +5329, 40, ISR for device 19 +5369, 40, ISR for device 19 +5409, 40, ISR for device 19 +5449, 40, ISR for device 19 +5489, 12, ISR for device 19 +5501, 1, IRET +5502, 34, CPU burst +5536, 1, switch to kernel mode +5537, 10, context saved +5547, 1, find vector 19 in memory position 0x0026 +5548, 1, load address 0X0765 into the PC +5549, 40, ISR for device 19 +5589, 40, ISR for device 19 +5629, 40, ISR for device 19 +5669, 40, ISR for device 19 +5709, 40, ISR for device 19 +5749, 40, ISR for device 19 +5789, 40, ISR for device 19 +5829, 40, ISR for device 19 +5869, 40, ISR for device 19 +5909, 40, ISR for device 19 +5949, 40, ISR for device 19 +5989, 40, ISR for device 19 +6029, 40, ISR for device 19 +6069, 40, ISR for device 19 +6109, 40, ISR for device 19 +6149, 40, ISR for device 19 +6189, 12, ISR for device 19 +6201, 1, IRET +6202, 85, CPU burst +6287, 1, switch to kernel mode +6288, 10, context saved +6298, 1, find vector 15 in memory position 0x001E +6299, 1, load address 0X0584 into the PC +6300, 40, ISR for device 15 +6340, 28, ISR for device 15 +6368, 1, IRET +6369, 73, CPU burst +6442, 1, switch to kernel mode +6443, 10, context saved +6453, 1, find vector 15 in memory position 0x001E +6454, 1, load address 0X0584 into the PC +6455, 40, ISR for device 15 +6495, 28, ISR for device 15 +6523, 1, IRET +6524, 26, CPU burst +6550, 1, switch to kernel mode +6551, 10, context saved +6561, 1, find vector 10 in memory position 0x0014 +6562, 1, load address 0X07B0 into the PC +6563, 40, ISR for device 10 +6603, 40, ISR for device 10 +6643, 40, ISR for device 10 +6683, 40, ISR for device 10 +6723, 40, ISR for device 10 +6763, 40, ISR for device 10 +6803, 40, ISR for device 10 +6843, 40, ISR for device 10 +6883, 40, ISR for device 10 +6923, 40, ISR for device 10 +6963, 40, ISR for device 10 +7003, 40, ISR for device 10 +7043, 40, ISR for device 10 +7083, 40, ISR for device 10 +7123, 4, ISR for device 10 +7127, 1, IRET +7128, 89, CPU burst +7217, 1, switch to kernel mode +7218, 10, context saved +7228, 1, find vector 10 in memory position 0x0014 +7229, 1, load address 0X07B0 into the PC +7230, 40, ISR for device 10 +7270, 40, ISR for device 10 +7310, 40, ISR for device 10 +7350, 40, ISR for device 10 +7390, 40, ISR for device 10 +7430, 40, ISR for device 10 +7470, 40, ISR for device 10 +7510, 40, ISR for device 10 +7550, 40, ISR for device 10 +7590, 40, ISR for device 10 +7630, 40, ISR for device 10 +7670, 40, ISR for device 10 +7710, 40, ISR for device 10 +7750, 40, ISR for device 10 +7790, 4, ISR for device 10 +7794, 1, IRET +7795, 15, CPU burst +7810, 1, switch to kernel mode +7811, 10, context saved +7821, 1, find vector 7 in memory position 0x000E +7822, 1, load address 0X00BD into the PC +7823, 40, ISR for device 7 +7863, 40, ISR for device 7 +7903, 40, ISR for device 7 +7943, 32, ISR for device 7 +7975, 1, IRET +7976, 24, CPU burst +8000, 1, switch to kernel mode +8001, 10, context saved +8011, 1, find vector 7 in memory position 0x000E +8012, 1, load address 0X00BD into the PC +8013, 40, ISR for device 7 +8053, 40, ISR for device 7 +8093, 40, ISR for device 7 +8133, 32, ISR for device 7 +8165, 1, IRET +8166, 23, CPU burst +8189, 1, switch to kernel mode +8190, 10, context saved +8200, 1, find vector 10 in memory position 0x0014 +8201, 1, load address 0X07B0 into the PC +8202, 40, ISR for device 10 +8242, 40, ISR for device 10 +8282, 40, ISR for device 10 +8322, 40, ISR for device 10 +8362, 40, ISR for device 10 +8402, 40, ISR for device 10 +8442, 40, ISR for device 10 +8482, 40, ISR for device 10 +8522, 40, ISR for device 10 +8562, 40, ISR for device 10 +8602, 40, ISR for device 10 +8642, 40, ISR for device 10 +8682, 40, ISR for device 10 +8722, 40, ISR for device 10 +8762, 4, ISR for device 10 +8766, 1, IRET +8767, 57, CPU burst +8824, 1, switch to kernel mode +8825, 10, context saved +8835, 1, find vector 10 in memory position 0x0014 +8836, 1, load address 0X07B0 into the PC +8837, 40, ISR for device 10 +8877, 40, ISR for device 10 +8917, 40, ISR for device 10 +8957, 40, ISR for device 10 +8997, 40, ISR for device 10 +9037, 40, ISR for device 10 +9077, 40, ISR for device 10 +9117, 40, ISR for device 10 +9157, 40, ISR for device 10 +9197, 40, ISR for device 10 +9237, 40, ISR for device 10 +9277, 40, ISR for device 10 +9317, 40, ISR for device 10 +9357, 40, ISR for device 10 +9397, 4, ISR for device 10 +9401, 1, IRET +9402, 11, CPU burst +9413, 1, switch to kernel mode +9414, 10, context saved +9424, 1, find vector 4 in memory position 0x0008 +9425, 1, load address 0X0292 into the PC +9426, 40, ISR for device 4 +9466, 40, ISR for device 4 +9506, 40, ISR for device 4 +9546, 40, ISR for device 4 +9586, 40, ISR for device 4 +9626, 40, ISR for device 4 +9666, 10, ISR for device 4 +9676, 1, IRET +9677, 100, CPU burst +9777, 1, switch to kernel mode +9778, 10, context saved +9788, 1, find vector 4 in memory position 0x0008 +9789, 1, load address 0X0292 into the PC +9790, 40, ISR for device 4 +9830, 40, ISR for device 4 +9870, 40, ISR for device 4 +9910, 40, ISR for device 4 +9950, 40, ISR for device 4 +9990, 40, ISR for device 4 +10030, 10, ISR for device 4 +10040, 1, IRET +10041, 73, CPU burst +10114, 1, switch to kernel mode +10115, 10, context saved +10125, 1, find vector 11 in memory position 0x0016 +10126, 1, load address 0X01F8 into the PC +10127, 40, ISR for device 11 +10167, 40, ISR for device 11 +10207, 40, ISR for device 11 +10247, 40, ISR for device 11 +10287, 40, ISR for device 11 +10327, 40, ISR for device 11 +10367, 40, ISR for device 11 +10407, 40, ISR for device 11 +10447, 40, ISR for device 11 +10487, 40, ISR for device 11 +10527, 40, ISR for device 11 +10567, 40, ISR for device 11 +10607, 40, ISR for device 11 +10647, 3, ISR for device 11 +10650, 1, IRET +10651, 18, CPU burst +10669, 1, switch to kernel mode +10670, 10, context saved +10680, 1, find vector 11 in memory position 0x0016 +10681, 1, load address 0X01F8 into the PC +10682, 40, ISR for device 11 +10722, 40, ISR for device 11 +10762, 40, ISR for device 11 +10802, 40, ISR for device 11 +10842, 40, ISR for device 11 +10882, 40, ISR for device 11 +10922, 40, ISR for device 11 +10962, 40, ISR for device 11 +11002, 40, ISR for device 11 +11042, 40, ISR for device 11 +11082, 40, ISR for device 11 +11122, 40, ISR for device 11 +11162, 40, ISR for device 11 +11202, 3, ISR for device 11 +11205, 1, IRET +11206, 34, CPU burst +11240, 1, switch to kernel mode +11241, 10, context saved +11251, 1, find vector 4 in memory position 0x0008 +11252, 1, load address 0X0292 into the PC +11253, 40, ISR for device 4 +11293, 40, ISR for device 4 +11333, 40, ISR for device 4 +11373, 40, ISR for device 4 +11413, 40, ISR for device 4 +11453, 40, ISR for device 4 +11493, 10, ISR for device 4 +11503, 1, IRET +11504, 65, CPU burst +11569, 1, switch to kernel mode +11570, 10, context saved +11580, 1, find vector 4 in memory position 0x0008 +11581, 1, load address 0X0292 into the PC +11582, 40, ISR for device 4 +11622, 40, ISR for device 4 +11662, 40, ISR for device 4 +11702, 40, ISR for device 4 +11742, 40, ISR for device 4 +11782, 40, ISR for device 4 +11822, 10, ISR for device 4 +11832, 1, IRET +11833, 77, CPU burst +11910, 1, switch to kernel mode +11911, 10, context saved +11921, 1, find vector 15 in memory position 0x001E +11922, 1, load address 0X0584 into the PC +11923, 40, ISR for device 15 +11963, 28, ISR for device 15 +11991, 1, IRET +11992, 31, CPU burst +12023, 1, switch to kernel mode +12024, 10, context saved +12034, 1, find vector 15 in memory position 0x001E +12035, 1, load address 0X0584 into the PC +12036, 40, ISR for device 15 +12076, 28, ISR for device 15 +12104, 1, IRET +12105, 18, CPU burst +12123, 1, switch to kernel mode +12124, 10, context saved +12134, 1, find vector 6 in memory position 0x000C +12135, 1, load address 0X0639 into the PC +12136, 40, ISR for device 6 +12176, 40, ISR for device 6 +12216, 40, ISR for device 6 +12256, 40, ISR for device 6 +12296, 40, ISR for device 6 +12336, 40, ISR for device 6 +12376, 25, ISR for device 6 +12401, 1, IRET +12402, 84, CPU burst +12486, 1, switch to kernel mode +12487, 10, context saved +12497, 1, find vector 6 in memory position 0x000C +12498, 1, load address 0X0639 into the PC +12499, 40, ISR for device 6 +12539, 40, ISR for device 6 +12579, 40, ISR for device 6 +12619, 40, ISR for device 6 +12659, 40, ISR for device 6 +12699, 40, ISR for device 6 +12739, 25, ISR for device 6 +12764, 1, IRET +12765, 39, CPU burst +12804, 1, switch to kernel mode +12805, 10, context saved +12815, 1, find vector 6 in memory position 0x000C +12816, 1, load address 0X0639 into the PC +12817, 40, ISR for device 6 +12857, 40, ISR for device 6 +12897, 40, ISR for device 6 +12937, 40, ISR for device 6 +12977, 40, ISR for device 6 +13017, 40, ISR for device 6 +13057, 25, ISR for device 6 +13082, 1, IRET +13083, 41, CPU burst +13124, 1, switch to kernel mode +13125, 10, context saved +13135, 1, find vector 6 in memory position 0x000C +13136, 1, load address 0X0639 into the PC +13137, 40, ISR for device 6 +13177, 40, ISR for device 6 +13217, 40, ISR for device 6 +13257, 40, ISR for device 6 +13297, 40, ISR for device 6 +13337, 40, ISR for device 6 +13377, 25, ISR for device 6 +13402, 1, IRET +13403, 95, CPU burst +13498, 1, switch to kernel mode +13499, 10, context saved +13509, 1, find vector 14 in memory position 0x001C +13510, 1, load address 0X0165 into the PC +13511, 40, ISR for device 14 +13551, 40, ISR for device 14 +13591, 40, ISR for device 14 +13631, 40, ISR for device 14 +13671, 40, ISR for device 14 +13711, 40, ISR for device 14 +13751, 40, ISR for device 14 +13791, 40, ISR for device 14 +13831, 40, ISR for device 14 +13871, 40, ISR for device 14 +13911, 40, ISR for device 14 +13951, 16, ISR for device 14 +13967, 1, IRET +13968, 16, CPU burst +13984, 1, switch to kernel mode +13985, 10, context saved +13995, 1, find vector 14 in memory position 0x001C +13996, 1, load address 0X0165 into the PC +13997, 40, ISR for device 14 +14037, 40, ISR for device 14 +14077, 40, ISR for device 14 +14117, 40, ISR for device 14 +14157, 40, ISR for device 14 +14197, 40, ISR for device 14 +14237, 40, ISR for device 14 +14277, 40, ISR for device 14 +14317, 40, ISR for device 14 +14357, 40, ISR for device 14 +14397, 40, ISR for device 14 +14437, 16, ISR for device 14 +14453, 1, IRET +14454, 24, CPU burst +14478, 1, switch to kernel mode +14479, 10, context saved +14489, 1, find vector 2 in memory position 0x0004 +14490, 1, load address 0X0695 into the PC +14491, 40, ISR for device 2 +14531, 40, ISR for device 2 +14571, 40, ISR for device 2 +14611, 30, ISR for device 2 +14641, 1, IRET +14642, 26, CPU burst +14668, 1, switch to kernel mode +14669, 10, context saved +14679, 1, find vector 2 in memory position 0x0004 +14680, 1, load address 0X0695 into the PC +14681, 40, ISR for device 2 +14721, 40, ISR for device 2 +14761, 40, ISR for device 2 +14801, 30, ISR for device 2 +14831, 1, IRET +14832, 90, CPU burst +14922, 1, switch to kernel mode +14923, 10, context saved +14933, 1, find vector 15 in memory position 0x001E +14934, 1, load address 0X0584 into the PC +14935, 40, ISR for device 15 +14975, 28, ISR for device 15 +15003, 1, IRET +15004, 76, CPU burst +15080, 1, switch to kernel mode +15081, 10, context saved +15091, 1, find vector 15 in memory position 0x001E +15092, 1, load address 0X0584 into the PC +15093, 40, ISR for device 15 +15133, 28, ISR for device 15 +15161, 1, IRET +15162, 37, CPU burst +15199, 1, switch to kernel mode +15200, 10, context saved +15210, 1, find vector 14 in memory position 0x001C +15211, 1, load address 0X0165 into the PC +15212, 40, ISR for device 14 +15252, 40, ISR for device 14 +15292, 40, ISR for device 14 +15332, 40, ISR for device 14 +15372, 40, ISR for device 14 +15412, 40, ISR for device 14 +15452, 40, ISR for device 14 +15492, 40, ISR for device 14 +15532, 40, ISR for device 14 +15572, 40, ISR for device 14 +15612, 40, ISR for device 14 +15652, 16, ISR for device 14 +15668, 1, IRET +15669, 28, CPU burst +15697, 1, switch to kernel mode +15698, 10, context saved +15708, 1, find vector 14 in memory position 0x001C +15709, 1, load address 0X0165 into the PC +15710, 40, ISR for device 14 +15750, 40, ISR for device 14 +15790, 40, ISR for device 14 +15830, 40, ISR for device 14 +15870, 40, ISR for device 14 +15910, 40, ISR for device 14 +15950, 40, ISR for device 14 +15990, 40, ISR for device 14 +16030, 40, ISR for device 14 +16070, 40, ISR for device 14 +16110, 40, ISR for device 14 +16150, 16, ISR for device 14 +16166, 1, IRET +16167, 92, CPU burst +16259, 1, switch to kernel mode +16260, 10, context saved +16270, 1, find vector 19 in memory position 0x0026 +16271, 1, load address 0X0765 into the PC +16272, 40, ISR for device 19 +16312, 40, ISR for device 19 +16352, 40, ISR for device 19 +16392, 40, ISR for device 19 +16432, 40, ISR for device 19 +16472, 40, ISR for device 19 +16512, 40, ISR for device 19 +16552, 40, ISR for device 19 +16592, 40, ISR for device 19 +16632, 40, ISR for device 19 +16672, 40, ISR for device 19 +16712, 40, ISR for device 19 +16752, 40, ISR for device 19 +16792, 40, ISR for device 19 +16832, 40, ISR for device 19 +16872, 40, ISR for device 19 +16912, 12, ISR for device 19 +16924, 1, IRET +16925, 24, CPU burst +16949, 1, switch to kernel mode +16950, 10, context saved +16960, 1, find vector 19 in memory position 0x0026 +16961, 1, load address 0X0765 into the PC +16962, 40, ISR for device 19 +17002, 40, ISR for device 19 +17042, 40, ISR for device 19 +17082, 40, ISR for device 19 +17122, 40, ISR for device 19 +17162, 40, ISR for device 19 +17202, 40, ISR for device 19 +17242, 40, ISR for device 19 +17282, 40, ISR for device 19 +17322, 40, ISR for device 19 +17362, 40, ISR for device 19 +17402, 40, ISR for device 19 +17442, 40, ISR for device 19 +17482, 40, ISR for device 19 +17522, 40, ISR for device 19 +17562, 40, ISR for device 19 +17602, 12, ISR for device 19 +17614, 1, IRET +17615, 74, CPU burst +17689, 1, switch to kernel mode +17690, 10, context saved +17700, 1, find vector 16 in memory position 0x0020 +17701, 1, load address 0X02DF into the PC +17702, 40, ISR for device 16 +17742, 40, ISR for device 16 +17782, 40, ISR for device 16 +17822, 40, ISR for device 16 +17862, 40, ISR for device 16 +17902, 40, ISR for device 16 +17942, 40, ISR for device 16 +17982, 40, ISR for device 16 +18022, 40, ISR for device 16 +18062, 40, ISR for device 16 +18102, 40, ISR for device 16 +18142, 40, ISR for device 16 +18182, 40, ISR for device 16 +18222, 40, ISR for device 16 +18262, 40, ISR for device 16 +18302, 40, ISR for device 16 +18342, 40, ISR for device 16 +18382, 40, ISR for device 16 +18422, 40, ISR for device 16 +18462, 40, ISR for device 16 +18502, 40, ISR for device 16 +18542, 40, ISR for device 16 +18582, 40, ISR for device 16 +18622, 36, ISR for device 16 +18658, 1, IRET +18659, 11, CPU burst +18670, 1, switch to kernel mode +18671, 10, context saved +18681, 1, find vector 16 in memory position 0x0020 +18682, 1, load address 0X02DF into the PC +18683, 40, ISR for device 16 +18723, 40, ISR for device 16 +18763, 40, ISR for device 16 +18803, 40, ISR for device 16 +18843, 40, ISR for device 16 +18883, 40, ISR for device 16 +18923, 40, ISR for device 16 +18963, 40, ISR for device 16 +19003, 40, ISR for device 16 +19043, 40, ISR for device 16 +19083, 40, ISR for device 16 +19123, 40, ISR for device 16 +19163, 40, ISR for device 16 +19203, 40, ISR for device 16 +19243, 40, ISR for device 16 +19283, 40, ISR for device 16 +19323, 40, ISR for device 16 +19363, 40, ISR for device 16 +19403, 40, ISR for device 16 +19443, 40, ISR for device 16 +19483, 40, ISR for device 16 +19523, 40, ISR for device 16 +19563, 40, ISR for device 16 +19603, 36, ISR for device 16 +19639, 1, IRET +19640, 26, CPU burst +19666, 1, switch to kernel mode +19667, 10, context saved +19677, 1, find vector 1 in memory position 0x0002 +19678, 1, load address 0X029C into the PC +19679, 40, ISR for device 1 +19719, 40, ISR for device 1 +19759, 20, ISR for device 1 +19779, 1, IRET +19780, 55, CPU burst +19835, 1, switch to kernel mode +19836, 10, context saved +19846, 1, find vector 1 in memory position 0x0002 +19847, 1, load address 0X029C into the PC +19848, 40, ISR for device 1 +19888, 40, ISR for device 1 +19928, 20, ISR for device 1 +19948, 1, IRET +19949, 43, CPU burst +19992, 1, switch to kernel mode +19993, 10, context saved +20003, 1, find vector 19 in memory position 0x0026 +20004, 1, load address 0X0765 into the PC +20005, 40, ISR for device 19 +20045, 40, ISR for device 19 +20085, 40, ISR for device 19 +20125, 40, ISR for device 19 +20165, 40, ISR for device 19 +20205, 40, ISR for device 19 +20245, 40, ISR for device 19 +20285, 40, ISR for device 19 +20325, 40, ISR for device 19 +20365, 40, ISR for device 19 +20405, 40, ISR for device 19 +20445, 40, ISR for device 19 +20485, 40, ISR for device 19 +20525, 40, ISR for device 19 +20565, 40, ISR for device 19 +20605, 40, ISR for device 19 +20645, 12, ISR for device 19 +20657, 1, IRET +20658, 80, CPU burst +20738, 1, switch to kernel mode +20739, 10, context saved +20749, 1, find vector 19 in memory position 0x0026 +20750, 1, load address 0X0765 into the PC +20751, 40, ISR for device 19 +20791, 40, ISR for device 19 +20831, 40, ISR for device 19 +20871, 40, ISR for device 19 +20911, 40, ISR for device 19 +20951, 40, ISR for device 19 +20991, 40, ISR for device 19 +21031, 40, ISR for device 19 +21071, 40, ISR for device 19 +21111, 40, ISR for device 19 +21151, 40, ISR for device 19 +21191, 40, ISR for device 19 +21231, 40, ISR for device 19 +21271, 40, ISR for device 19 +21311, 40, ISR for device 19 +21351, 40, ISR for device 19 +21391, 12, ISR for device 19 +21403, 1, IRET +21404, 95, CPU burst +21499, 1, switch to kernel mode +21500, 10, context saved +21510, 1, find vector 1 in memory position 0x0002 +21511, 1, load address 0X029C into the PC +21512, 40, ISR for device 1 +21552, 40, ISR for device 1 +21592, 20, ISR for device 1 +21612, 1, IRET +21613, 98, CPU burst +21711, 1, switch to kernel mode +21712, 10, context saved +21722, 1, find vector 1 in memory position 0x0002 +21723, 1, load address 0X029C into the PC +21724, 40, ISR for device 1 +21764, 40, ISR for device 1 +21804, 20, ISR for device 1 +21824, 1, IRET +21825, 47, CPU burst +21872, 1, switch to kernel mode +21873, 10, context saved +21883, 1, find vector 8 in memory position 0x0010 +21884, 1, load address 0X06EF into the PC +21885, 40, ISR for device 8 +21925, 40, ISR for device 8 +21965, 40, ISR for device 8 +22005, 40, ISR for device 8 +22045, 40, ISR for device 8 +22085, 40, ISR for device 8 +22125, 40, ISR for device 8 +22165, 40, ISR for device 8 +22205, 40, ISR for device 8 +22245, 40, ISR for device 8 +22285, 40, ISR for device 8 +22325, 40, ISR for device 8 +22365, 40, ISR for device 8 +22405, 40, ISR for device 8 +22445, 40, ISR for device 8 +22485, 40, ISR for device 8 +22525, 40, ISR for device 8 +22565, 40, ISR for device 8 +22605, 40, ISR for device 8 +22645, 40, ISR for device 8 +22685, 40, ISR for device 8 +22725, 40, ISR for device 8 +22765, 40, ISR for device 8 +22805, 40, ISR for device 8 +22845, 40, ISR for device 8 +22885, 1, IRET +22886, 20, CPU burst +22906, 1, switch to kernel mode +22907, 10, context saved +22917, 1, find vector 8 in memory position 0x0010 +22918, 1, load address 0X06EF into the PC +22919, 40, ISR for device 8 +22959, 40, ISR for device 8 +22999, 40, ISR for device 8 +23039, 40, ISR for device 8 +23079, 40, ISR for device 8 +23119, 40, ISR for device 8 +23159, 40, ISR for device 8 +23199, 40, ISR for device 8 +23239, 40, ISR for device 8 +23279, 40, ISR for device 8 +23319, 40, ISR for device 8 +23359, 40, ISR for device 8 +23399, 40, ISR for device 8 +23439, 40, ISR for device 8 +23479, 40, ISR for device 8 +23519, 40, ISR for device 8 +23559, 40, ISR for device 8 +23599, 40, ISR for device 8 +23639, 40, ISR for device 8 +23679, 40, ISR for device 8 +23719, 40, ISR for device 8 +23759, 40, ISR for device 8 +23799, 40, ISR for device 8 +23839, 40, ISR for device 8 +23879, 40, ISR for device 8 +23919, 1, IRET +23920, 29, CPU burst +23949, 99, CPU burst +24048, 38, CPU burst +24086, 1, switch to kernel mode +24087, 10, context saved +24097, 1, find vector 19 in memory position 0x0026 +24098, 1, load address 0X0765 into the PC +24099, 40, ISR for device 19 +24139, 40, ISR for device 19 +24179, 40, ISR for device 19 +24219, 40, ISR for device 19 +24259, 40, ISR for device 19 +24299, 40, ISR for device 19 +24339, 40, ISR for device 19 +24379, 40, ISR for device 19 +24419, 40, ISR for device 19 +24459, 40, ISR for device 19 +24499, 40, ISR for device 19 +24539, 40, ISR for device 19 +24579, 40, ISR for device 19 +24619, 40, ISR for device 19 +24659, 40, ISR for device 19 +24699, 40, ISR for device 19 +24739, 12, ISR for device 19 +24751, 1, IRET +24752, 75, CPU burst +24827, 1, switch to kernel mode +24828, 10, context saved +24838, 1, find vector 19 in memory position 0x0026 +24839, 1, load address 0X0765 into the PC +24840, 40, ISR for device 19 +24880, 40, ISR for device 19 +24920, 40, ISR for device 19 +24960, 40, ISR for device 19 +25000, 40, ISR for device 19 +25040, 40, ISR for device 19 +25080, 40, ISR for device 19 +25120, 40, ISR for device 19 +25160, 40, ISR for device 19 +25200, 40, ISR for device 19 +25240, 40, ISR for device 19 +25280, 40, ISR for device 19 +25320, 40, ISR for device 19 +25360, 40, ISR for device 19 +25400, 40, ISR for device 19 +25440, 40, ISR for device 19 +25480, 12, ISR for device 19 +25492, 1, IRET +25493, 16, CPU burst +25509, 1, switch to kernel mode +25510, 10, context saved +25520, 1, find vector 4 in memory position 0x0008 +25521, 1, load address 0X0292 into the PC +25522, 40, ISR for device 4 +25562, 40, ISR for device 4 +25602, 40, ISR for device 4 +25642, 40, ISR for device 4 +25682, 40, ISR for device 4 +25722, 40, ISR for device 4 +25762, 10, ISR for device 4 +25772, 1, IRET +25773, 23, CPU burst +25796, 1, switch to kernel mode +25797, 10, context saved +25807, 1, find vector 4 in memory position 0x0008 +25808, 1, load address 0X0292 into the PC +25809, 40, ISR for device 4 +25849, 40, ISR for device 4 +25889, 40, ISR for device 4 +25929, 40, ISR for device 4 +25969, 40, ISR for device 4 +26009, 40, ISR for device 4 +26049, 10, ISR for device 4 +26059, 1, IRET +26060, 47, CPU burst +26107, 1, switch to kernel mode +26108, 10, context saved +26118, 1, find vector 11 in memory position 0x0016 +26119, 1, load address 0X01F8 into the PC +26120, 40, ISR for device 11 +26160, 40, ISR for device 11 +26200, 40, ISR for device 11 +26240, 40, ISR for device 11 +26280, 40, ISR for device 11 +26320, 40, ISR for device 11 +26360, 40, ISR for device 11 +26400, 40, ISR for device 11 +26440, 40, ISR for device 11 +26480, 40, ISR for device 11 +26520, 40, ISR for device 11 +26560, 40, ISR for device 11 +26600, 40, ISR for device 11 +26640, 3, ISR for device 11 +26643, 1, IRET +26644, 17, CPU burst +26661, 1, switch to kernel mode +26662, 10, context saved +26672, 1, find vector 11 in memory position 0x0016 +26673, 1, load address 0X01F8 into the PC +26674, 40, ISR for device 11 +26714, 40, ISR for device 11 +26754, 40, ISR for device 11 +26794, 40, ISR for device 11 +26834, 40, ISR for device 11 +26874, 40, ISR for device 11 +26914, 40, ISR for device 11 +26954, 40, ISR for device 11 +26994, 40, ISR for device 11 +27034, 40, ISR for device 11 +27074, 40, ISR for device 11 +27114, 40, ISR for device 11 +27154, 40, ISR for device 11 +27194, 3, ISR for device 11 +27197, 1, IRET +27198, 39, CPU burst +27237, 1, switch to kernel mode +27238, 10, context saved +27248, 1, find vector 19 in memory position 0x0026 +27249, 1, load address 0X0765 into the PC +27250, 40, ISR for device 19 +27290, 40, ISR for device 19 +27330, 40, ISR for device 19 +27370, 40, ISR for device 19 +27410, 40, ISR for device 19 +27450, 40, ISR for device 19 +27490, 40, ISR for device 19 +27530, 40, ISR for device 19 +27570, 40, ISR for device 19 +27610, 40, ISR for device 19 +27650, 40, ISR for device 19 +27690, 40, ISR for device 19 +27730, 40, ISR for device 19 +27770, 40, ISR for device 19 +27810, 40, ISR for device 19 +27850, 40, ISR for device 19 +27890, 12, ISR for device 19 +27902, 1, IRET +27903, 48, CPU burst +27951, 1, switch to kernel mode +27952, 10, context saved +27962, 1, find vector 19 in memory position 0x0026 +27963, 1, load address 0X0765 into the PC +27964, 40, ISR for device 19 +28004, 40, ISR for device 19 +28044, 40, ISR for device 19 +28084, 40, ISR for device 19 +28124, 40, ISR for device 19 +28164, 40, ISR for device 19 +28204, 40, ISR for device 19 +28244, 40, ISR for device 19 +28284, 40, ISR for device 19 +28324, 40, ISR for device 19 +28364, 40, ISR for device 19 +28404, 40, ISR for device 19 +28444, 40, ISR for device 19 +28484, 40, ISR for device 19 +28524, 40, ISR for device 19 +28564, 40, ISR for device 19 +28604, 12, ISR for device 19 +28616, 1, IRET +28617, 45, CPU burst +28662, 1, switch to kernel mode +28663, 10, context saved +28673, 1, find vector 12 in memory position 0x0018 +28674, 1, load address 0X03B9 into the PC +28675, 40, ISR for device 12 +28715, 40, ISR for device 12 +28755, 40, ISR for device 12 +28795, 25, ISR for device 12 +28820, 1, IRET +28821, 83, CPU burst +28904, 1, switch to kernel mode +28905, 10, context saved +28915, 1, find vector 12 in memory position 0x0018 +28916, 1, load address 0X03B9 into the PC +28917, 40, ISR for device 12 +28957, 40, ISR for device 12 +28997, 40, ISR for device 12 +29037, 25, ISR for device 12 +29062, 1, IRET +29063, 68, CPU burst +29131, 100, CPU burst +29231, 61, CPU burst +29292, 1, switch to kernel mode +29293, 10, context saved +29303, 1, find vector 11 in memory position 0x0016 +29304, 1, load address 0X01F8 into the PC +29305, 40, ISR for device 11 +29345, 40, ISR for device 11 +29385, 40, ISR for device 11 +29425, 40, ISR for device 11 +29465, 40, ISR for device 11 +29505, 40, ISR for device 11 +29545, 40, ISR for device 11 +29585, 40, ISR for device 11 +29625, 40, ISR for device 11 +29665, 40, ISR for device 11 +29705, 40, ISR for device 11 +29745, 40, ISR for device 11 +29785, 40, ISR for device 11 +29825, 3, ISR for device 11 +29828, 1, IRET +29829, 96, CPU burst +29925, 1, switch to kernel mode +29926, 10, context saved +29936, 1, find vector 11 in memory position 0x0016 +29937, 1, load address 0X01F8 into the PC +29938, 40, ISR for device 11 +29978, 40, ISR for device 11 +30018, 40, ISR for device 11 +30058, 40, ISR for device 11 +30098, 40, ISR for device 11 +30138, 40, ISR for device 11 +30178, 40, ISR for device 11 +30218, 40, ISR for device 11 +30258, 40, ISR for device 11 +30298, 40, ISR for device 11 +30338, 40, ISR for device 11 +30378, 40, ISR for device 11 +30418, 40, ISR for device 11 +30458, 3, ISR for device 11 +30461, 1, IRET +30462, 88, CPU burst +30550, 1, switch to kernel mode +30551, 10, context saved +30561, 1, find vector 2 in memory position 0x0004 +30562, 1, load address 0X0695 into the PC +30563, 40, ISR for device 2 +30603, 40, ISR for device 2 +30643, 40, ISR for device 2 +30683, 30, ISR for device 2 +30713, 1, IRET +30714, 42, CPU burst +30756, 1, switch to kernel mode +30757, 10, context saved +30767, 1, find vector 2 in memory position 0x0004 +30768, 1, load address 0X0695 into the PC +30769, 40, ISR for device 2 +30809, 40, ISR for device 2 +30849, 40, ISR for device 2 +30889, 30, ISR for device 2 +30919, 1, IRET +30920, 41, CPU burst +30961, 1, switch to kernel mode +30962, 10, context saved +30972, 1, find vector 3 in memory position 0x0006 +30973, 1, load address 0X042B into the PC +30974, 40, ISR for device 3 +31014, 40, ISR for device 3 +31054, 40, ISR for device 3 +31094, 40, ISR for device 3 +31134, 40, ISR for device 3 +31174, 40, ISR for device 3 +31214, 40, ISR for device 3 +31254, 20, ISR for device 3 +31274, 1, IRET +31275, 73, CPU burst +31348, 1, switch to kernel mode +31349, 10, context saved +31359, 1, find vector 3 in memory position 0x0006 +31360, 1, load address 0X042B into the PC +31361, 40, ISR for device 3 +31401, 40, ISR for device 3 +31441, 40, ISR for device 3 +31481, 40, ISR for device 3 +31521, 40, ISR for device 3 +31561, 40, ISR for device 3 +31601, 40, ISR for device 3 +31641, 20, ISR for device 3 +31661, 1, IRET +31662, 52, CPU burst diff --git a/device_table.txt b/input_files/device_table.txt similarity index 100% rename from device_table.txt rename to input_files/device_table.txt diff --git a/input_files/input1.txt b/input_files/input1.txt new file mode 100644 index 0000000..461d2e7 --- /dev/null +++ b/input_files/input1.txt @@ -0,0 +1,9 @@ +CPU, 50 +SYSCALL, 5 +CPU, 100 +END_IO, 5 +CPU, 40 +SYSCALL, 7 +CPU, 80 +END_IO, 7 +CPU, 60 \ No newline at end of file diff --git a/input_files/input2.txt b/input_files/input2.txt new file mode 100644 index 0000000..461d2e7 --- /dev/null +++ b/input_files/input2.txt @@ -0,0 +1,9 @@ +CPU, 50 +SYSCALL, 5 +CPU, 100 +END_IO, 5 +CPU, 40 +SYSCALL, 7 +CPU, 80 +END_IO, 7 +CPU, 60 \ No newline at end of file diff --git a/input_files/input3.txt b/input_files/input3.txt new file mode 100644 index 0000000..461d2e7 --- /dev/null +++ b/input_files/input3.txt @@ -0,0 +1,9 @@ +CPU, 50 +SYSCALL, 5 +CPU, 100 +END_IO, 5 +CPU, 40 +SYSCALL, 7 +CPU, 80 +END_IO, 7 +CPU, 60 \ No newline at end of file diff --git a/input_files/input4.txt b/input_files/input4.txt new file mode 100644 index 0000000..461d2e7 --- /dev/null +++ b/input_files/input4.txt @@ -0,0 +1,9 @@ +CPU, 50 +SYSCALL, 5 +CPU, 100 +END_IO, 5 +CPU, 40 +SYSCALL, 7 +CPU, 80 +END_IO, 7 +CPU, 60 \ No newline at end of file diff --git a/testcases/trace_1.txt b/input_files/trace_1.txt similarity index 100% rename from testcases/trace_1.txt rename to input_files/trace_1.txt diff --git a/vector_table.txt b/input_files/vector_table.txt similarity index 100% rename from vector_table.txt rename to input_files/vector_table.txt diff --git a/interrupts.cpp b/interrupts.cpp index f868ce2..b8bdde5 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -5,7 +5,7 @@ * */ -#include +#include "interrupts.hpp" // terminal giving me a weird error, so I flipped <> to "" int main(int argc, char** argv) { @@ -19,21 +19,54 @@ int main(int argc, char** argv) { std::string execution; //!< string to accumulate the execution output /******************ADD YOUR VARIABLES HERE*************************/ + int current_time = 0; + const int context_save_time = 10; // time taken to save context + const int isr_activity_time = 40; // time taken for each chunk of ISR activity + //int IO_time = 0.1; // time taken for IO operation - - + /******************************************************************/ //parse each line of the input trace file while(std::getline(input_file, trace)) { auto [activity, duration_intr] = parse_trace(trace); + /******************ADD YOUR SIMULATION CODE HERE*************************/ - - - + if (activity == "CPU") { + execution += std::to_string(current_time) + ", " + std::to_string(duration_intr) + ", CPU burst\n"; + current_time += duration_intr; + } + else if(activity == "SYSCALL") { + auto [prev_execution, new_time] = intr_boilerplate(current_time, duration_intr, context_save_time, vectors); + execution += prev_execution; + current_time = new_time; + + } + else if( activity == "END_IO") { + // IO operation handling code here + auto [prev_execution, new_time] = intr_boilerplate(current_time, duration_intr, context_save_time, vectors); + execution += prev_execution; + current_time = new_time; + + //ISR body execution, assuming fixed time for IO operation + int device_delay = delays.at(duration_intr-1); // get the delay for the device + while (device_delay> 0){ + int chunk = std::min(isr_activity_time, device_delay); + execution += std::to_string(current_time) + ", " + std::to_string(chunk) + ", ISR END_IO 'execution' \n"; + current_time += chunk; + device_delay -= chunk; + + } + + execution += std::to_string(current_time) + ", " + std::to_string(1) + ", 1, IRET \n"; + current_time += 1; + } + + else { + std::cerr << "Error: Unknown activity type: " << activity << std::endl; + } /************************************************************************/ - } input_file.close(); @@ -41,4 +74,5 @@ int main(int argc, char** argv) { write_output(execution); return 0; + } diff --git a/interrupts.hpp b/interrupts.hpp index dacd319..4b45b28 100644 --- a/interrupts.hpp +++ b/interrupts.hpp @@ -9,46 +9,31 @@ #include #include #include +#include #include #define ADDR_BASE 0 #define VECTOR_SIZE 2 -#define CPU_SPEED 100 -#define MEM_LIMIT 1 - -/** - * \brief parse the CLI arguments - * - * This helper function parses command line arguments and checks for errors - * - * @param argc number of command line arguments - * @param argv the command line arguments - * @return a vector of strings (the parsed vector table) - * - */ -std::tuple, std::vector> parse_args(int argc, char** argv) { - if(argc != 4) { - std::cout << "ERROR!\nExpected 3 argument, received " << argc - 1 << std::endl; - std::cout << "To run the program, do: ./interrutps " << std::endl; - exit(1); - } +// ---------------- Helper functions ---------------- - std::ifstream input_file; - input_file.open(argv[1]); - if (!input_file.is_open()) { - std::cerr << "Error: Unable to open file: " << argv[1] << std::endl; +// Parse CLI args: now expects 5 arguments +// ./interrupts +std::tuple, std::vector, int, int, std::string> parse_args(int argc, char** argv) { + if(argc != 6) { + std::cout << "ERROR!\nExpected 5 arguments, received " << argc - 1 << std::endl; + std::cout << "Usage: ./interrupts \n"; exit(1); } - std::ifstream input_vector_table; - input_vector_table.open(argv[2]); + std::string trace_file = argv[1]; + + std::ifstream input_vector_table(argv[2]); if (!input_vector_table.is_open()) { - std::cerr << "Error: Unable to open file: " << argv[2] << std::endl; + std::cerr << "Error: Unable to open vector table: " << argv[2] << std::endl; exit(1); } - std::string vector; std::vector vectors; while(std::getline(input_vector_table, vector)) { @@ -56,22 +41,25 @@ std::tuple, std::vector> parse_args(int argc, char } input_vector_table.close(); - std::string duration; - std::vector delays; - std::ifstream device_table; - device_table.open(argv[3]); + std::ifstream device_table(argv[3]); if (!device_table.is_open()) { - std::cerr << "Error: Unable to open file: " << argv[3] << std::endl; + std::cerr << "Error: Unable to open device table: " << argv[3] << std::endl; exit(1); } + std::string duration; + std::vector delays; while(std::getline(device_table, duration)) { - delays.push_back(std::stoi(duration)); + if (!duration.empty()) + delays.push_back(std::stoi(duration)); } - return {vectors, delays}; + int context_time = std::stoi(argv[4]); + int isr_step = std::stoi(argv[5]); + + return {vectors, delays, context_time, isr_step, trace_file}; } -// Following function was taken from stackoverflow; helper function for splitting strings +// String split by delimiter std::vector split_delim(std::string input, std::string delim) { std::vector tokens; std::size_t pos = 0; @@ -86,8 +74,8 @@ std::vector split_delim(std::string input, std::string delim) { return tokens; } +// Parse one line from trace file std::tuple parse_trace(std::string trace) { - //split line by ',' auto parts = split_delim(trace, ","); if (parts.size() < 2) { std::cerr << "Error: Malformed input line: " << trace << std::endl; @@ -95,48 +83,47 @@ std::tuple parse_trace(std::string trace) { } auto activity = parts[0]; + // remove spaces + activity.erase(remove_if(activity.begin(), activity.end(), ::isspace), activity.end()); auto duration_intr = std::stoi(parts[1]); return {activity, duration_intr}; } -//Default interrupt boilerplate +// Boilerplate interrupt sequence std::pair intr_boilerplate(int current_time, int intr_num, int context_save_time, std::vector vectors) { - std::string execution = ""; - execution += std::to_string(current_time) + ", " + std::to_string(1) + ", switch to kernel mode\n"; + execution += std::to_string(current_time) + ", 1, switch to kernel mode\n"; current_time++; execution += std::to_string(current_time) + ", " + std::to_string(context_save_time) + ", context saved\n"; current_time += context_save_time; - + char vector_address_c[10]; - sprintf(vector_address_c, "0x%04X", (ADDR_BASE + (intr_num * VECTOR_SIZE))); + snprintf(vector_address_c, sizeof(vector_address_c), "0x%04X", (ADDR_BASE + (intr_num * VECTOR_SIZE))); //terminal gave me a werid error, I added the "sizeof" function std::string vector_address(vector_address_c); - execution += std::to_string(current_time) + ", " + std::to_string(1) + ", find vector " + std::to_string(intr_num) - + " in memory position " + vector_address + "\n"; + execution += std::to_string(current_time) + ", 1, find vector " + std::to_string(intr_num) + + " in memory position " + vector_address + "\n"; current_time++; - execution += std::to_string(current_time) + ", " + std::to_string(1) + ", load address " + vectors.at(intr_num) + " into the PC\n"; + execution += std::to_string(current_time) + ", 1, load address " + vectors.at(intr_num) + " into the PC\n"; current_time++; return std::make_pair(execution, current_time); } - +// Write output file void write_output(std::string execution) { std::ofstream output_file("execution.txt"); - if (output_file.is_open()) { output_file << execution; - output_file.close(); // Close the file when done - std::cout << "File content overwritten successfully." << std::endl; + output_file.close(); + std::cout << "Output generated in execution.txt" << std::endl; } else { std::cerr << "Error opening file!" << std::endl; } - - std::cout << "Output generated in execution.txt" << std::endl; } + #endif diff --git a/run_all.ps1 b/run_all.ps1 new file mode 100644 index 0000000..bef911f --- /dev/null +++ b/run_all.ps1 @@ -0,0 +1,45 @@ +# ----------------------------- +# run_all.ps1 +# ----------------------------- +# This script runs all available trace files (trace_1 to trace_5) +# and generates separate execution outputs for each trace. + +# Folder where the input files and traces live +$traceDir1 = ".\input_files" +$traceDir2 = ".\testcases" + +# Paths to vector and device tables +$vectorTable = "$traceDir1\vector_table.txt" +$deviceTable = "$traceDir1\device_table.txt" + +# Make sure the executable exists +$exePath = ".\bin\interrupts.exe" +if (!(Test-Path $exePath)) { + Write-Host "Error: interrupts.exe not found. Please build first using build.sh or g++" + exit 1 +} + +# Loop through all trace files (1–5) +for ($i = 1; $i -le 5; $i++) { + $traceFile1 = "$traceDir1\trace_$i.txt" + $traceFile2 = "$traceDir2\trace_$i.txt" + $outputFile = ".\execution_trace_$i.txt" + + if (Test-Path $traceFile1) { + Write-Host "Running trace_$i from input_files..." + & $exePath $traceFile1 $vectorTable $deviceTable 10 40 + Copy-Item -Path ".\execution.txt" -Destination $outputFile -Force + Write-Host "→ Output saved to $outputFile" + } + elseif (Test-Path $traceFile2) { + Write-Host "Running trace_$i from testcases..." + & $exePath $traceFile2 $vectorTable $deviceTable 10 40 + Copy-Item -Path ".\execution.txt" -Destination $outputFile -Force + Write-Host "→ Output saved to $outputFile" + } + else { + Write-Host "Trace file trace_$i.txt not found. Skipping." + } +} + +Write-Host "`nāœ… All traces executed successfully!"