WUT_Computer_Science/Programming/EOPSY/lab3/report/sections/07-getting-process-to-be-blocked-4.tex
Krzysztof kuhy Rudnicki ffa5dad02a Split 19 over-cap LaTeX reports, proving each PDF is unchanged
The 250-line cap applies to prose too, and the reports were the worst
offenders -- ENUME's projectA.tex alone was 1,876 lines. Each is now a
preamble plus one \input{} per section, which is how a long LaTeX document is
normally organised; not one byte of prose was rewritten.

"The PDF is unchanged" is checked by a script rather than by eye, because
hashing the PDF cannot work: pdflatex stamps a /CreationDate and an /ID into
every build, so two runs of the SAME source already differ. tex_fingerprint.sh
compares what a reader sees instead -- page count plus a hash of the extracted
text -- and it is stable across rebuilds of untouched sources, which is the
property that makes it usable as a gate.

It earned its keep immediately. Both ECOTE reports quote an example LaTeX
document inside an lstlisting block, so \end{document} appears in the middle
of the file; splitting on the FIRST one stranded everything after it. Same
page count, different text, caught automatically. EOPSY lab3 exposed a second
bug: a \section{} title that runs onto the next line.

Result: 19 .tex over the cap -> 1. The survivor,
ELAC/.../03-building-nfa-...tex, is 418 lines of consecutive tikz figures
with no subsection to split on and needs a hand-placed boundary.

Verified: 29 splits across two passes (section, then subsection for the
pieces still over), every one reporting `unchanged` from
scripts/tex_fingerprint.sh --check.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172dj34FDpao6wsix8ZuCzE
2026-08-28 19:47:12 +02:00

31 lines
1.1 KiB
TeX

\section{Getting process to be blocked 4 times}
Up untill now process got blocked for maximum of 3 times. This makes sense since
since they get blocked every 500 ms and the runtime for single process is 2000
ms, so they get blocked first time at 500 ms, second time at 1000 ms and third
time at 1500 ms, at 2000 ms they finish execution so they do not get blocked. \\
If we change runtime of process to 2001 ms we should get as the result them
getting blocked 4 times! \\
I changed meandev in scheduling.conf to 2001 and observed results:
\subsection{Summary Results file}
\begin{lstlisting}
Scheduling Type: Batch (Nonpreemptive)
Scheduling Name: First-Come First-Served
Simulation Run Time: 6003
Mean: 2001
Standard Deviation: 0
\end{lstlisting}
\begin{center}
\begin{tabular}{| c | c | c | c | c |}
\hline
Process \#& CPU Time& IO Blocking& CPU Completed&
CPU Blocked \\ \hline
0 & 2001 (ms)& 500 (ms)& 2001 (ms)&
4 times \\ \hline
1 & 2001 (ms)& 500 (ms)& 2001 (ms)&
4 times \\ \hline
2 & 2001 (ms)& 500 (ms)& 2001 (ms)&
4 times \\ \hline
\end{tabular}
\end{center}
Sure enough we got all of the processes blocked 4 times!