firewalker Δημοσ. 8 Νοεμβρίου 2008 Share Δημοσ. 8 Νοεμβρίου 2008 Βασικά η εντολή είναι gcc. Για να κάνεις compile το foo.c δίνεις gcc -o foo.c foo όπου foo το εκτελέσιμο αρχείο που θα παραχθεί και μπορεί να έχει ότι όνομα θέλεις. Όλα αυτά εφόσον ο GNU C Compiler υπάρχει στο σύστημα σου. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
efefef Δημοσ. 8 Νοεμβρίου 2008 Μέλος Share Δημοσ. 8 Νοεμβρίου 2008 ΠΩΣ ΓΙΝΕΤΑΙ ΜΕ WRITE()?? printf("Parent process with PID: %i\n", pidFather); ΤΕΛΕΥΤΑΙΑ ΕΡΩΤΗΣΗ!! Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
nske Δημοσ. 8 Νοεμβρίου 2008 Share Δημοσ. 8 Νοεμβρίου 2008 Ασχολήθηκες καθόλου και κόλλησες; Μέχρι στιγμής δείχνεις ότι δε σε ενδιαφέρει να μάθεις 2 πράγματα αλλά να ξεμπερδέψεις με την εργασία. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
gtroza Δημοσ. 9 Νοεμβρίου 2008 Share Δημοσ. 9 Νοεμβρίου 2008 πλάκα πλάκα, με το νέο νομοσχέδιο το insomnia μπορεί να χορηγεί και e-πτυχία ! . Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
aegis Δημοσ. 9 Νοεμβρίου 2008 Share Δημοσ. 9 Νοεμβρίου 2008 πλάκα, πλάκα....και δάσκαλο έχουμε....μια χαρά θα είμαστε... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 efefef διάβασες καθόλου το man page της write? Τέλος πάντων, κάνε τα εξής στην αρχή του προγράμματος: >FILE *fd = fopen ("path/to/your/file", "w"); if (fd == NULL) { printf ("Error opening file. I will stop here\n"); exit (1); } και μετά κάθε φορά που θα θέλεις να γράψεις στο αρχείο αντί για printf κάνε: write (fd, "αυτό που θες να γράψεις το αρχείο εδώ", ο αριθμός των bytes αυτού που θές να γράψεις εδώ)´ Στο τέλος κάνε close (fd); Πρέπει να μάθεις πόσα bytes είναι αυτό που θές να γράψεις (δηλαδή πόσα bytes είναι ένα char και πόσα ένας int στη C), και πώς θα τα μετράς. Παραπάνω δεν θα σου πώ γιατί πρέπει να πάω και δουλειά . Βοηθήματα πάντως: man 3 sprintf για να μάθεις πώς βάζεις 2 δυναμικά data types σε ένα. man 3 strlen για να δεις πώς παίρνεις το μέγε8ος ενός char * και τέλος αν δεν θες να καρφώνεις τιμές στα μεγέθη για τα string σου, μάθε τι είναι pointer και δες την man 3 malloc ώστε να μπορείς όταν μέσα στον κώδικά σου φτάσεις στο σημείο να ξέρεις ακριβώς το μέγεθος αυτού που θέλεις να γράψεις, να πεις στο σύστημα να σου κρατήσει τόσο μνήμη όση χρειάζεσαι για να αποθηκευτεί αυτό το πράγμα. Επίσης το man 3 free δεν θα ήταν άσχημο. Και βάλε και κανένα error check στον κώδικα. Όλες αυτές οι functions που θα χρησιμοποιήσεις επιστρέφουν κάποιες τιμές όταν τις τρέξεις, δεν τις επιστρέφουν για πλάκα, κάτι σημαίνουν. Θα σε βοηθήσει πολύ στο να δεις αν υπάρχει κάποιο πρόβλημα όσο θα φτιάχνεις τον κώδικα. Αυτά και καλή συνέχεια. PS. το σημαντικότερο ξέχασα. Μάθε αν όταν ένα process ανοίγει ή φτιάχνει ένα αρχείο, αν τα permissions να διαβάσεις και να γράψεις σε αυτό κληρονομούνται στα child processes μέσω της fork Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
gtroza Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 καλημέρα NullScan . Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
DIMITRISG Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 Τιποτα Nullscan για μενα πρέπει να του δωσεις τιμωρια να γραψει 10 scripts με την write() και να προσελθει με τον κηδεμονα στις 8.00 sto γραφειο των καθηγητων Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 Ε, καλά μην είμαστε και τόσο αυστηροί (από τώρα...). Καλημέρα σε όλους! Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
firewalker Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 >The child inherits copies of the parent's set of open file descriptors. Each file descriptor in the child refers to the same open file description (see open(2)) as the corresponding file descriptor in the parent. This means that the two descriptors share open file status flags, current file offset, and signal-driven I/O attributes (see the description of F_SETOWN and F_SETSIG in fcntl(2)). Γεια σου NullScan. Τι έγινε; Καθάρισες με την Intel; Για την clone(2) τι γνώμη έχεις; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 10 Νοεμβρίου 2008 Share Δημοσ. 10 Νοεμβρίου 2008 Ναι ας πούμε ότι προς το παρόν ξεμπέρδεψα με αυτούς. Ναι δεν διαφωνώ για την clone αλλά επειδή είμαι επιφυλακτικός για την ασφάλεια του συστήματος όταν αποφασίζεις να επιτρέψεις το inheritance των permissions σε οτιδήποτε (iopl κτλ.) θα πρότεινα σαν καλύτερη λύση το να ανοιχτεί το αρχείο με τέτοιο τρόπο ώστε να μπορούν να γράψουν πολλά processes σε αυτό. Για περισσότερες πληροφορίες στο man 3 open hint: O_SYNC Εγκυκλοπαιδικά όλα αυτά βέβαια γιατί για το πνεύμα της εργασίας φαντάζομαι είναι λίγο off... Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.