From b746d5ad12d2e8a1c642fbeee09259e74666ce04 Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Thu, 6 Nov 2025 23:26:57 -0500 Subject: [PATCH 1/7] fixed small issue string should be to_string --- interrupts.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/interrupts.cpp b/interrupts.cpp index e2f2722..e738c94 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -104,6 +104,28 @@ std::tuple simulate_trace(std::vector>>>>>> Stashed changes @@ -121,7 +143,15 @@ std::tuple simulate_trace(std::vector>>>>>> Stashed changes /////////////////////////////////////////////////////////////////////////////////////////// From 070a603a993989199980fcb5a703b89c83bf50bc Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Thu, 6 Nov 2025 23:28:40 -0500 Subject: [PATCH 2/7] fixed small issue string should be to_string --- interrupts.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/interrupts.cpp b/interrupts.cpp index e738c94..5f5cfb8 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -143,15 +143,11 @@ std::tuple simulate_trace(std::vector>>>>>> Stashed changes /////////////////////////////////////////////////////////////////////////////////////////// From e251ed017e2bf54f4d8da49360d7c26462913c24 Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Thu, 6 Nov 2025 23:56:22 -0500 Subject: [PATCH 3/7] exec update --- execution.txt | 32 ++++++++++++++++++++++++++++++++ interrupts.cpp | 33 +++++++++++++++++++++++++-------- program1.txt | 4 ++++ run.sh | 2 ++ system_status.txt | 13 +++++++++++++ trace.txt | 6 ++++++ 6 files changed, 82 insertions(+), 8 deletions(-) create mode 100644 execution.txt create mode 100644 program1.txt create mode 100644 run.sh create mode 100644 system_status.txt create mode 100644 trace.txt diff --git a/execution.txt b/execution.txt new file mode 100644 index 0000000..6c6317a --- /dev/null +++ b/execution.txt @@ -0,0 +1,32 @@ +0, 1, switch to kernel mode +1, 10, context saved +11, 1, find vector 2 in memory position 0x0004 +12, 1, load address 0X0695 into the PC +13, 20, cloning the PCB +33, 0, scheduler called +33, 1, IRET +34, 10, CPU Burst +44, 1, switch to kernel mode +45, 10, context saved +55, 1, find vector 3 in memory position 0x0006 +56, 1, load address 0X042B into the PC +57, 60, Program is 10 Mb large +117, 150, loading program into memory +267, 3, marking partition as occupied +270, 6, updating PCB +276, 0, scheduler called +276, 1, IRET +277, 50, CPU Burst +327, 1, switch to kernel mode +328, 10, context saved +338, 1, find vector 6 in memory position 0x000C +339, 1, load address 0X0639 into the PC +340, 265, SYSCALL ISR (ADD STEPS HERE) +605, 1, IRET +606, 15, CPU Burst +621, 1, switch to kernel mode +622, 10, context saved +632, 1, find vector 6 in memory position 0x000C +633, 1, load address 0X0639 into the PC +634, 265, ENDIO ISR(ADD STEPS HERE) +899, 1, IRET diff --git a/interrupts.cpp b/interrupts.cpp index 5f5cfb8..9c372b7 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -51,7 +51,7 @@ std::tuple simulate_trace(std::vector simulate_trace(std::vector simulate_trace(std::vector simulate_trace(std::vector>>>>>> Stashed changes - + } + //237, 3, marking partition as occupied + //240, 6, updating PCB + //246, 0, scheduler called + //246, 1, IRET + + execution += std::to_string(current_time) + ", 3, marking partition as occupied\n"; + current_time += 3; + + execution += std::to_string(current_time) + ", 6, updating PCB\n"; + current_time += 6; + + system_status += "time: " + std::to_string(current_time) + "; current trace: EXEC " + program_name + ", " + std::to_string(duration_intr) + "\n"; + system_status += print_PCB(current, wait_queue); + + execution += std::to_string(current_time) + ", 0, scheduler called\n"; + execution += std::to_string(current_time) + ", 1, IRET\n"; + current_time += 1; /////////////////////////////////////////////////////////////////////////////////////////// diff --git a/program1.txt b/program1.txt new file mode 100644 index 0000000..2a0d2a0 --- /dev/null +++ b/program1.txt @@ -0,0 +1,4 @@ +CPU, 50 +SYSCALL, 6 +CPU, 15 +END_IO, 6 \ No newline at end of file diff --git a/run.sh b/run.sh new file mode 100644 index 0000000..c8b0e39 --- /dev/null +++ b/run.sh @@ -0,0 +1,2 @@ +./bin/interrupts trace.txt vector_table.txt device_table.txt external_files.txt +cat execution.txt \ No newline at end of file diff --git a/system_status.txt b/system_status.txt new file mode 100644 index 0000000..caa390a --- /dev/null +++ b/system_status.txt @@ -0,0 +1,13 @@ +time: 33; current trace: FORK, 20 ++------------------------------------------------------+ +| PID |program name |partition number | size | state | ++------------------------------------------------------+ +| 1 | init | 5 | 1 | running | +| 0 | init | 6 | 1 | waiting | ++------------------------------------------------------+ +time: 276; current trace: EXEC program1, 60 ++------------------------------------------------------+ +| PID |program name |partition number | size | state | ++------------------------------------------------------+ +| 0 | program1 | 4 | 10 | running | ++------------------------------------------------------+ diff --git a/trace.txt b/trace.txt new file mode 100644 index 0000000..baaa963 --- /dev/null +++ b/trace.txt @@ -0,0 +1,6 @@ +FORK, 20 +IF_CHILD, 0 +IF_PARENT, 0 +EXEC program1, 60 +ENDIF, 0 +CPU, 10 \ No newline at end of file From 8b281ed66d1da54af97f623f047ab6d0ea1eb7c6 Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Fri, 7 Nov 2025 00:02:24 -0500 Subject: [PATCH 4/7] readded fork it got deleted for some reason... --- interrupts.cpp | 53 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 50 insertions(+), 3 deletions(-) diff --git a/interrupts.cpp b/interrupts.cpp index 9c372b7..0a88834 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -51,7 +51,25 @@ std::tuple simulate_trace(std::vector simulate_trace(std::vector simulate_trace(std::vector wait_queue; /******************ADD YOUR VARIABLES HERE*************************/ - + /******************************************************************/ @@ -224,4 +271,4 @@ int main(int argc, char** argv) { write_output(system_status, "system_status.txt"); return 0; -} +} \ No newline at end of file From b63e86a26a69657199c0015b59edb0202e0f8168 Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Fri, 7 Nov 2025 00:06:53 -0500 Subject: [PATCH 5/7] Messed up code copying in fork accidentally dupliacted code --- interrupts.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/interrupts.cpp b/interrupts.cpp index 0a88834..881eafb 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -134,14 +134,6 @@ std::tuple simulate_trace(std::vector Date: Fri, 7 Nov 2025 00:38:36 -0500 Subject: [PATCH 6/7] COMPLETED - ALMOST FIXED EXEC, just need to add the isr steps from assignment 1 --- ".gitignore\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes "build.sh\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes "device_table.txt\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes execution.txt | 2 +- "external_files.txt\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes interrupts.cpp | 2 +- "interrupts.cpp\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes "interrupts.hpp\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes run.sh | 3 +-- "vector_table.txt\357\200\272Zone.Identifier" | Bin 0 -> 87 bytes 10 files changed, 3 insertions(+), 4 deletions(-) create mode 100644 ".gitignore\357\200\272Zone.Identifier" create mode 100644 "build.sh\357\200\272Zone.Identifier" create mode 100644 "device_table.txt\357\200\272Zone.Identifier" create mode 100644 "external_files.txt\357\200\272Zone.Identifier" create mode 100644 "interrupts.cpp\357\200\272Zone.Identifier" create mode 100644 "interrupts.hpp\357\200\272Zone.Identifier" create mode 100644 "vector_table.txt\357\200\272Zone.Identifier" diff --git "a/.gitignore\357\200\272Zone.Identifier" "b/.gitignore\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git "a/build.sh\357\200\272Zone.Identifier" "b/build.sh\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git "a/device_table.txt\357\200\272Zone.Identifier" "b/device_table.txt\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git a/execution.txt b/execution.txt index 6c6317a..d566109 100644 --- a/execution.txt +++ b/execution.txt @@ -10,7 +10,7 @@ 45, 10, context saved 55, 1, find vector 3 in memory position 0x0006 56, 1, load address 0X042B into the PC -57, 60, Program is 10 Mb large +57, 60, The program size is 10MB 117, 150, loading program into memory 267, 3, marking partition as occupied 270, 6, updating PCB diff --git "a/external_files.txt\357\200\272Zone.Identifier" "b/external_files.txt\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git a/interrupts.cpp b/interrupts.cpp index 881eafb..183e230 100644 --- a/interrupts.cpp +++ b/interrupts.cpp @@ -148,7 +148,7 @@ std::tuple simulate_trace(std::vectordl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git "a/interrupts.hpp\357\200\272Zone.Identifier" "b/interrupts.hpp\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 diff --git a/run.sh b/run.sh index c8b0e39..4da1eca 100644 --- a/run.sh +++ b/run.sh @@ -1,2 +1 @@ -./bin/interrupts trace.txt vector_table.txt device_table.txt external_files.txt -cat execution.txt \ No newline at end of file +./bin/interrupts trace.txt vector_table.txt device_table.txt external_files.txt \ No newline at end of file diff --git "a/vector_table.txt\357\200\272Zone.Identifier" "b/vector_table.txt\357\200\272Zone.Identifier" new file mode 100644 index 0000000000000000000000000000000000000000..248fa4155b2c5ccc55317ebd3c5f1a531ed7f574 GIT binary patch literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb literal 0 HcmV?d00001 From a4e7df3027871b7428082af7df82fc0f18934364 Mon Sep 17 00:00:00 2001 From: RedArtist75 Date: Fri, 7 Nov 2025 11:33:19 -0500 Subject: [PATCH 7/7] deleted zone identifier --- ".gitignore\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "build.sh\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "device_table.txt\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "external_files.txt\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "interrupts.cpp\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "interrupts.hpp\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes "vector_table.txt\357\200\272Zone.Identifier" | Bin 87 -> 0 bytes 7 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 ".gitignore\357\200\272Zone.Identifier" delete mode 100644 "build.sh\357\200\272Zone.Identifier" delete mode 100644 "device_table.txt\357\200\272Zone.Identifier" delete mode 100644 "external_files.txt\357\200\272Zone.Identifier" delete mode 100644 "interrupts.cpp\357\200\272Zone.Identifier" delete mode 100644 "interrupts.hpp\357\200\272Zone.Identifier" delete mode 100644 "vector_table.txt\357\200\272Zone.Identifier" diff --git "a/.gitignore\357\200\272Zone.Identifier" "b/.gitignore\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/build.sh\357\200\272Zone.Identifier" "b/build.sh\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/device_table.txt\357\200\272Zone.Identifier" "b/device_table.txt\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/external_files.txt\357\200\272Zone.Identifier" "b/external_files.txt\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/interrupts.cpp\357\200\272Zone.Identifier" "b/interrupts.cpp\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/interrupts.hpp\357\200\272Zone.Identifier" "b/interrupts.hpp\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb diff --git "a/vector_table.txt\357\200\272Zone.Identifier" "b/vector_table.txt\357\200\272Zone.Identifier" deleted file mode 100644 index 248fa4155b2c5ccc55317ebd3c5f1a531ed7f574..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87 zcma!!%Fjy;DN4*MPD?F{<>dl#JyUFrdAWj8fg(kzMWIDGw$4^Dp~b01#W6*xDTzff mF8SqoIr)hx#W9Y>#hK}Oxv6<2@kYA2iNz(UMS4}41q=XUkRQqb