Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπερα...

Προσφατα...ενω εκανα μια εργασια..ειχα φτασει στο εξης σημειο κωδικα...

...

...

do {//μια αδεια do-while

} while ( lseek(p1ToP2,0,SEEK_END) > 0);

...

...

(ολο αυτο το loop ανηκει σε μια διεργασια-παιδι)

δηλαδη..περιμενε μεχρι το αρχειο με file-descriptor p1Top2 να αποκτησει περιεχομενο

 

-ενω καθηγητες μου λεγαν οτι αυτη ειναι η λυση μου φανηκε λιγο οχι τοσο αποδοτικη γιατι κανει τζαμπα επαναληψεις(μαλιστα αυτο γινεται τεσσερις φορες ταυτοχρονα..δλδ για 4 ξεχριστες διεργασιες)

-σκεφτομουν αντι για το loop αυτο να βαλω μια συναρτηση τυπου sleep()  κ μετα alarm() αλλα:

1)δεν ξερω τον ακριβη χρονο

2)δεν εχω καταλαβει την λειτουργια της alarm..αν και το εψαξα στο manual

Πως μπορω(αν γινεται) να το λυσω καπως ετσι??

 

Με αφορμη το προηγουμενο...

 

-Γινεται να κατασκευασω μια συναρτηση..η οποια αντι για παραμετρους μεταβλητες να παιρνει ως παραμετρους λογικες συνθηκες(δεν εχω ιδεα αν γινεται αν και το εχω ψαξει)??

Δημοσ.

To λεγόμενο buzy waiting Που κάνεις έχει το εξείς πρόβλημα. Ο χρονοπρογραμματιστής του λειτουργικού θα εκτελεί διεργασίες που έχουν υπολειπόμενη εργασία. Θεωρητικά αν εσύ το κάνεις με αυτόν τον τρόπο σε έναν υπολογιστή με 1 επεξεργαστή και έχεις 4-5 διεργασίες, και η καθεμία που περιμένει έχει κενή do-while τότε μπορεί να τρέχει μόνο αυτή και να μην αφήνει καμιά άλλη να τρέξει στον επεξεργαστή, οπότε ο "παραγωγός-διεργασία" δεν θα καταφέρει να εισάγει ποτέ και θα έχουμε deadlock! Η σωστή λογική είναι η διεργασία που δεν έχει δεδομένα για επεξεργασία  να σταματάει (block) για να τρέξει ο παραγωγός. Κοίταξε http://en.wikipedia.org/wiki/Semaphore_(programming)και "το πρόβλημα παραγωγού-καταναλωτή).

Δημοσ.

Αυτά που ζητάς υπάρχουν ήδη. 

 

Κάνε search για sleep και wakeup of processes. 

 

 

Προφανώς και η λύση με το while σκέτο (θα μπορούσε να έχει έστω ένα noop) είναι από τις όχι καλύτερες (να το θέσω απαλά). 

Δημοσ. (επεξεργασμένο)

Τα νευρα μου.

Ισως θα βοηθούσε λίγο context. Πρόκειται για μάθημα πρώτου έτους όπου μόλις έχει γίνει εισαγωγή σε IPC (τα πολύ βασικά). Η άσκηση ζητούσε να υλοποιηθεί  επικοινωνία μεταξύ διεργασιών με χρήση αρχείων και μετά να γίνει το ίδιο με pipes για να επιδειχθούν οι διαφορές ανάμεσα σε έναν "κακό" και ένα πιο φυσιολογικό τρόπο επικοινωνίας.

 

Και προς τον/την OP: Γνωρίζεις ότι και εγώ και ο διδάσκων απαντάμε πολύ γρήγορα σε απορίες μέσω email και μπορείς πάντα να έρθεις στο γραφείο με τις ερωτήσεις σου.

--Βάνα

Επεξ/σία από Vee
Δημοσ.

Ισως θα βοηθούσε λίγο context. Πρόκειται για μάθημα πρώτου έτους όπου μόλις έχει γίνει εισαγωγή σε IPC (τα πολύ βασικά). Η άσκηση ζητούσε να υλοποιηθεί  επικοινωνία μεταξύ διεργασιών με χρήση αρχείων και μετά να γίνει το ίδιο με pipes για να επιδειχθούν οι διαφορές ανάμεσα σε έναν "κακό" και ένα πιο φυσιολογικό τρόπο επικοινωνίας.

 

Και προς τον/την OP: Γνωρίζεις ότι και εγώ και ο διδάσκων απαντάμε πολύ γρήγορα σε απορίες μέσω email και μπορείς πάντα να έρθεις στο γραφείο με τις ερωτήσεις σου.

--Βάνα

 

IPC σε καθαρο procedural. Τα (νευρα μου)2

Δημοσ.

 

Busted
.
.
.
με ελαφρυντικά γιατί δε ζήτησε λύση.

 

 

 

IPC σε καθαρο procedural. Τα (νευρα μου)2

 

Γιατί τόσα νεύρα; Για πες μου την γνώμη σου.

Δημοσ.

Όντως παπί.

 

Θαρρώ πως είσαι λίγο άδικος εδώ. Θα μπορούσες όμως να πεις τι ακριβώς σε προβληματίζει. 

 

Σε κάθε περίπτωση, είμαι σχεδόν σίγουρος πως πάντα υπάρχει εκείνος ο φοιτητής που δεν παρακολουθεί στο μάθημα (ασχέτως εάν είναι παρών) και μετά κλαίγεται για την λύση. 

Δημοσ.

 

ΚΑΛΗΣΠΕΡΑ Εχω να κανω καποια εργασια και επειδη δεν ειμαι καλη σαυτα μηπως μπορει καποιος να με βοηθησει να την κανω?
 

 

Καλώς τα μας!

 

Σε περίπτωση που δε ξέρεις, δε λύνουμε ασκήσεις. Βοήθεια και κατεύθυνση αν θες (αν και πάλι δε σε γέμισε ο καθηγητής σου) ευχαρίστως να δώσουμε.

Δημοσ.

 

ΚΑΛΗΣΠΕΡΑ Εχω να κανω καποια εργασια και επειδη δεν ειμαι καλη σαυτα μηπως μπορει καποιος να με βοηθησει να την κανω?
 
 

 

 

 

 

Τις εργασίες τις κάνεις για να γίνεις καλή σε αυτά. Οπότε βρες άλλη δικαιολογία (όπως βαριέμαι να προσπαθήσω). 

Δημοσ.

Αν πιστεύετε οτι βαριεμαι οκ!!! Ηθελα απλα μια βοήθεια....διότι δεν εχω καταλαβει την εκφώνηση! Θελετε να με βοηθήσετε καλως δεν θελετε το λέτε και τελος....

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...