From b7b0345f61ab7d26af9a165bc2d3e55cb9a3331a Mon Sep 17 00:00:00 2001 From: Simone Piccardi Date: Fri, 25 Oct 2002 18:19:56 +0000 Subject: [PATCH 1/1] Spiegazione sulla implementazione dei semafori e correzioni su alcuni titoli di sezione --- img/semtruct.dia | Bin 6549 -> 6929 bytes ipc.tex | 136 +++++++++++++++++++++++++++++++++-------------- network.tex | 4 +- 3 files changed, 99 insertions(+), 41 deletions(-) diff --git a/img/semtruct.dia b/img/semtruct.dia index 0b7703416d1b1faffb709cb47ac273518e6af5f5..0744183d1a366cb2d7b2b3ddc1b6782e41b7f429 100644 GIT binary patch literal 6929 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 HF