Τρίτη, 26 Ιανουαρίου 2010

Εργασία στα Λειτουργικά

Στη συνέχεια καλείστε να υλοποιήσετε το ακόλουθο πρόγραμμα σε C το οποίο θα κάνει χρήση κλήσεων συστήματος του Linux:
  •   Μια διεργασία Γονέας θα παράγει 10 τυχαίους ακεραίους (rand).
  •   Στη συνέχεια θα παράγει (fork) 2 διεργασίες Παιδιά.
  •   Οι διεργασίες Παιδιά θα τυπώνουν το PID  (getpid) τους και θα κάνουν ταξινόμηση (qsort, βλ. < stdlib.h >) τους ακεραίους κατά αύξουςα σειρά η μία, και κατά φθίνουσα σειρά η άλλη.
  •   Οι ταξινομημένοι πίνακες θα τυπώνονται στο stdout με χρήση της write.
  •   Η  διεργασία  Γονέας  θα  βρίσκεται  σε  αναμονή  (waitpid)  μέχρι  να ολοκληρώσουν οι διεργασίες Παιδιά την εκτέλεση τους.
Υποχρεωτικά flags κατά το compile με τον gcc:  -std=c99 -Werror  -Wall -pedantic -Wextra -Wfatal-errors 


ΑΛΛΑΓΗ: 10/2/10 SyntaxHighlighter used









Example output:






Η εργασία εκπονήθηκε μαζί με τον φίλο και συμφοιτητή Παναγιώτη Σπυριδάκο.

4 σχόλια:

  1. πω μεγαλη βοηθεια ευχαριστω :)

    ΑπάντησηΔιαγραφή
  2. Το Google είναι μεγάλη βοήθεια, μην τα μπερδεύουμε :P

    ΑπάντησηΔιαγραφή
  3. τι εξαμηνο εισαι?πρεπει να σε εχω δει στη σχολη

    ΑπάντησηΔιαγραφή
  4. 7ο, αλλά μην φανταστείς τίποτα ότι έχω χιλλιάδες ένσημα από την σχολή, δεν πολυπατάω πόδι, ακόμα παίρνω βαθειές ανάσες να αποφασίσω ότι πρέπει να περνάω 20 μαθήματα / έτος :Ρ

    ΑπάντησηΔιαγραφή