Βοήθεια με κωδικό unix,σώστε μεεεε....

Γενικά θέματα για τις γλώσσες προγραμματισμού που δεν καλύπτονται από τις άλλες περιοχές της κατηγορίας.

Συντονιστές: WebDev Moderators, Super-Moderators

Κλειδωμένο
elikiotis
Δημοσιεύσεις: 1
Εγγραφή: 23 Οκτ 2008 13:26

Βοήθεια με κωδικό unix,σώστε μεεεε....

Δημοσίευση από elikiotis » 23 Οκτ 2008 14:42

Ο στόχος της άσκησης είναι η εξοικείωση µε ϑεµελιώδεις έννοιες και µηχανισµούς που προσφέρει
το λειτουργικό σύστηµα UNIX όπως : δηµιουργία/διαχείριση διεργασιών (fork, exec, exit) και
επικοινωνία διεργασιών (signals, sockets, shared memory).
Χρησιµοποιώντας τα εργαλεία που προσφέρει το λειτουργικό σύστηµα UNIX, καλείστε να υλοποιήσετε
ένα bulletin board system (BBS). Το περιβάλλον αυτό αποτελείται από ένα server και έναν client.
Το σύστηµα αποτελείται από ένα σύνολο ϑεµάτων (topics) όπου το κάθε ϑέµα περιέχει ανακοινώσεις.
΄Ενα ϑέµα ορίζεται από ένα αριθµό (topicID) και ένα όνοµα (topic name). Μια ηλεκτρονική ανακοίνωση
αποτελείτε από : (α) ένα ϑέµα, () έναν αποστολέα και (γ) περιεχόµενο (το πολύ 250 χαρακτήρες).
Ο server είναι µία διεργασία (process) η οποία εκτελείται στο παρασκήνιο (background). Ο server
διατηρεί εσωτερικά µια στατική λίστα από τα ϑέµατα του συστήµατος (π.χ. 2-3). Για κάθε ϑέµα διατηρεί
µια συλλογή από ηλεκτρονικές ανακοινώσεις (το topic-message-list του κάθε ϑέµατος).
Ο client είναι µια διεργασία η οποία εκτελείται στο προσκήνιο και επικοινωνεί µε τον server χρησι-
µοποιώντας sockets. Το σύστηµα προσφέρει δύο υπηρεσίες :

1. Ανάγνωση ανακοινώσεων: ο client συνδέεται µε τον server για να παραλάβει όλα τις ηλεκτρονικές
ανακοινώσεις ενος συγκεκριµένου ϑέµατος. Ο server δηµιουργεί µια νέα διεργασία µε την κλήση
του συστήµατος fork για να µεταδώσει την συλλογή από ανακοινώσεις του συγκεκριµένου ϑέµατος
και στην συνέχεια τερµατίζει την σύνδεση. Αν το ϑέµα δεν υπάρχει ενηµερώνει τον client για το
σφάλµα ανάγνωσης.

2. Αποστολή ανακοινώσεων: ο client συνδέεται µε τον server για να στείλει µια νέα ανακοίνωση.
Για την ανακοίνωση αναφέρει το ϑέµα (topicID), το όνοµα του χρήστη και το περιεχόµενο της
ανακοίνωσης. Ο server δηµιουργεί µια νέα διεργασία µε την κλήση του συστήµατος fork που
ελέγχει αν το ϑέµα είναι αποδεκτό, αλλιώς διακόπτει την σύνδεση και ενηµερώνει τον client για την
αδυναµία καταχώρησης. Στην συνέχεια η νεα διεργασία αποθηκεύει την ανακοίνωση στο αντίστοιχο
topic-message-list και ενηµερώνει τον client για την παράδοση της ανακοίνωσης.

Ο κώδικας που ϑα παραδώσετε πρέπει να είναι καλά σχολιασµένος και δοµηµένος. ∆εν χρειάζεται να
παραδώσετε αναφορά.
Ο κώδικας πρέπει να χρησιµοποιεί τα ασικά εργαλεία που ϑα παρουσιαστούν στα ϕροντιστήρια του
µαθήµατος : fork/exit/exec για τη διαχείριση διεργασιών, sockets για την επικοινωνία µεταξύ
client/server, semaphores για τον αµοιβαίο αποκλεισµό, shared memory και signals για την
επικοινωνία των διεργασιών του server.

id12586
στις καρδιές μας
Δημοσιεύσεις: 8387
Εγγραφή: 23 Ιουν 2003 23:28
Τοποθεσία: Far away
Επικοινωνία:

Βοήθεια με κωδικό unix,σώστε μεεεε....

Δημοσίευση από id12586 » 23 Οκτ 2008 15:07

Ωραία. Που κόλλησες και θες βοήθεια?
Chris at your Services
ΕικόναSacame de Aqui

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Βοήθεια με κωδικό unix,σώστε μεεεε....

Δημοσίευση από soteres2002 » 23 Οκτ 2008 15:41

Περιμένει εθελοντικές προσφορές... (με φιλικές προθέσεις)

id12586
στις καρδιές μας
Δημοσιεύσεις: 8387
Εγγραφή: 23 Ιουν 2003 23:28
Τοποθεσία: Far away
Επικοινωνία:

Βοήθεια με κωδικό unix,σώστε μεεεε....

Δημοσίευση από id12586 » 23 Οκτ 2008 15:43

Θα περιμένει πολύ τότε..

elikioti καλώς ήρθες. Μάλλον θα ήταν φρόνιμο να διαβάσεις το παρακάτω. ;)
http://www.freestuff.gr/forums/viewtopic.php?t=32671
Chris at your Services
ΕικόναSacame de Aqui

Κλειδωμένο

Επιστροφή στο “γλώσσες προγραμματισμού - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες