allgemein:test:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| allgemein:test:start [25.09.2025 09:09] – [b) Speicherbedarf] lars | allgemein:test:start [06.11.2025 11:03] (aktuell) – [Programmierung] lars | ||
|---|---|---|---|
| Zeile 257: | Zeile 257: | ||
| > Hinweis (aus der Aufgabe): Nutzt man ersatzweise 90 000 Scans/Tag und 48 MiB/Scan, ergibt sich $90\,000 \times 48 = 4\, | > Hinweis (aus der Aufgabe): Nutzt man ersatzweise 90 000 Scans/Tag und 48 MiB/Scan, ergibt sich $90\,000 \times 48 = 4\, | ||
| - | === Aufgabe2 === | + | ===== Aufgabe2 |
| + | ===== Beispielrechnung: | ||
| + | **Gegeben: | ||
| + | * Format: 26 × 38 cm | ||
| + | * Auflösung: 600 dpi | ||
| + | * Umrechnungsfaktor: | ||
| + | * Übertragungsrate: | ||
| + | ---- | ||
| - | ### Gegeben: | + | **1. Umrechnung in Zoll** |
| - | * **Format:** 26 cm × 38 cm | + | |
| - | * **Auflösung:** 600 dpi | + | * 38 cm ÷ 2,54 ≈ **14,96 Zoll** |
| - | * **Umrechnungsfaktor: | + | |
| - | * **Übertragungsrate: | + | |
| - | --- | + | ---- |
| - | ### 1. Größe in Pixeln | + | **2. Pixelanzahl |
| - | $$ | + | * 10,24 Zoll × 600 dpi = **6144 px** |
| - | 26 \,\text{cm} = \frac{26}{2, | + | * 14,96 Zoll × 600 dpi ≈ **8976 px** |
| - | $$ | + | * Gesamt: 6144 × 8976 ≈ **55.161.600 Pixel** |
| - | $$ | + | ---- |
| - | 38 \,\text{cm} = \frac{38}{2, | + | |
| - | $$ | + | |
| - | Pixelanzahl: | + | **3. Speicherbedarf** |
| - | $$ | + | === Farbscan (24 Bit / 3 Byte pro Pixel) === |
| - | 10,24 \times | + | * 55.161.600 × 3 = **165.484.800 Byte** |
| - | $$ | + | * Umrechnung in MiB: 165.484.800 ÷ 1.048.576 ≈ **157,8 MiB** |
| - | $$ | + | === Schwarz-Weiß-Scan (1 Bit pro Pixel) === |
| - | 14,96 \times | + | * 55.161.600 × 1 Bit = **55.161.600 Bit** |
| - | $$ | + | * Umrechnung in Byte: ÷ 8 = **6.895.200 Byte** |
| + | * Umrechnung in MiB: 6.895.200 ÷ 1.048.576 ≈ **6,6 MiB** | ||
| - | Gesamtpixel: | + | ---- |
| - | $$ | + | **4. Übertragungszeit** |
| - | 6144 \times 8976 \approx 55.161.600 \, | + | |
| - | $$ | + | |
| - | --- | + | * Leitung: 150 Mbit/s = 150.000.000 Bit/s ÷ 8 = **18.750.000 B/s** |
| + | * In MiB/s: 18.750.000 ÷ 1.048.576 ≈ **17,87 MiB/s** | ||
| - | ### 2. Speicherbedarf berechnen | + | === Farbscan === |
| + | * Zeit = 157,8 ÷ 17,87 ≈ **8,83 s** | ||
| + | * Aufgerundet: | ||
| - | Normalerweise rechnet man mit **24 Bit = 3 Byte pro Pixel** (Farbbild). | + | === Schwarz-Weiß-Scan === |
| + | | ||
| + | * Aufgerundet: | ||
| - | $$ | + | ---- |
| - | 55.161.600 \times 3 = 165.484.800 \, | + | |
| - | $$ | + | |
| - | In MiB (1 MiB = 1.048.576 Byte): | + | **Endergebnis: |
| + | * Farbscan: **≈ 158 MiB → 0:09 Min:Sek** | ||
| + | * SW-Scan: **≈ 6,6 MiB → 0:01 Min:Sek** | ||
| - | $$ | ||
| - | \frac{165.484.800}{1.048.576} \approx 157,8 \, | ||
| - | $$ | ||
| - | Also **~158 MiB pro Scan**. | + | ---- |
| - | --- | ||
| - | ### 3. Übertragungszeit berechnen | + | ==== Programmierung ==== |
| - | 150 Mbit/s = | + | <code csharp> |
| + | string message = "Die Systemauslastung war an mehr als 18 Stunden höher als 80 %."; | ||
| + | string title = " | ||
| + | int cpuutil | ||
| + | int cpulimit | ||
| + | int sumstd | ||
| - | $$ | + | // Array mit Testdaten (24 Stunden) |
| - | 150 \times 10^6 \,\text{bit/s} = 18,75 \,\text{MB/s} \quad (1\,B = 8\,bit) | + | int[] usedCPU |
| - | $$ | + | { 33,44,40,52,60,56, 33, |
| - | oder in MiB/s: | + | // ---------------- Erweiterung MONCPU ---------------- |
| + | cpulimit = 80; // Grenzwert festlegen | ||
| - | $$ | + | for (int i = 0; i < usedCPU.Length; |
| - | \frac{18.750.000}{1.048.576} \approx 17,87 \,\text{MiB/s} | + | { |
| - | $$ | + | cpuutil = usedCPU[i]; |
| + | if (cpuutil > cpulimit) | ||
| + | | ||
| + | sumstd = sumstd + 1; | ||
| + | | ||
| + | } | ||
| - | Zeit: | + | // Meldung nur ausgeben, wenn mehr als 18 Stunden über 80 % |
| + | if (sumstd > 18) | ||
| + | { | ||
| + | MessageBox.Show(message, | ||
| + | } | ||
| + | </ | ||
| - | $$ | + | <code c> |
| - | \frac{157, | + | #include < |
| - | $$ | + | |
| - | Aufgerundet: | + | int main() { |
| + | char message[] = "Die Systemauslastung war an mehr als 18 Stunden höher als 80 %."; | ||
| + | char title[] | ||
| + | int cpuutil | ||
| + | int cpulimit | ||
| + | int sumstd | ||
| - | --- | + | // Array mit Testdaten (24 Stunden) |
| + | int usedCPU[24] = {33, | ||
| + | | ||
| - | ✅ **Endergebnis: | + | // Alle 24 Stunden prüfen |
| + | for (int i = 0; i < 24; i++) { | ||
| + | cpuutil = usedCPU[i]; | ||
| + | if (cpuutil > cpulimit) { | ||
| + | sumstd++; | ||
| + | } | ||
| + | } | ||
| - | * Dateigröße: | + | |
| - | * Übertragungszeit bei 150 Mbit/s: **0:09 Min:Sek** | + | if (sumstd > 18) { |
| + | printf(" | ||
| + | } | ||
| - | --- | + | return 0; |
| + | } | ||
| + | </ | ||
| - | Soll ich dir das auch gleich als kleine Rechenvorlage in **DokuWiki-Syntax** ausformulieren, | + | ---- |
| + | < a2s > | ||
| + | / | ||
| + | | | ||
| + | +-- .env | ||
| + | +-- docker-compose.yml | ||
| + | +-- data/ | ||
| + | +-- backup/ | ||
| + | +-- scripts/ | ||
| + | |||
| + | </ | ||
allgemein/test/start.1758784190.txt.gz · Zuletzt geändert: von lars