Πρώτο commit
Αυτό το commit περιλαμβάνεται σε:
commit
8ec8e9bee2
451 αρχεία άλλαξαν με 46736 προσθήκες και 0 διαγραφές
40
content/articles/01/01_editorial.md
Κανονικό αρχείο
40
content/articles/01/01_editorial.md
Κανονικό αρχείο
|
@ -0,0 +1,40 @@
|
|||
+++
|
||||
title = 'Editorial'
|
||||
date = '1998-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Μιχάλης Καμπριάνης'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 1
|
||||
+++
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Καλώς ορίσατε στο **Magaz**, το πρώτο (νομίζουμε) ελληνικό *on-line* Linux περιοδικό.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Αυτό δεν είναι ένα γράμμα του εκδότη, γιατί αυτό το περιοδικό δεν έχει εκδότη :-) Είναι μία αναφορά, μία πρόκληση - πρόσκληση. Ας τα πιάσουμε όμως με τη σειρά:
|
||||
|
||||
- Αρκετοί στο παρελθόν έκαναν πολλές προσπάθειες για χρήση ελληνικών στην κονσόλα και στα X-Windows. Ξέρω ότι είναι πάνω από 5 τα άτομα που ασχολήθηκαν με
|
||||
αυτό, και γι\' αυτό δεν θα αναφέρω ονόματα, από το φόβο μην ξεχάσω ή/και υποβιβάσω κανέναν.
|
||||
- Στις αρχές του 1997, δημιουργήθηκε η linux-greek-users στο [argeas.argos.hol.gr](http://argeas.argos.hol.gr). από τον [Ι. Ιωάννου](mailto:roryt@hol.gr). Μία
|
||||
mailing list με σκοπό να μαζέψει τους Έλληνες χρήστες του Linux σε μία κοινότητα. Μία κοινότητα που ο ένας θα βοηθούσε τον άλλο και όλοι μαζί θα
|
||||
προσπαθούσαν να λύσουν κοινά (ή όχι και τόσο κοινά) προβλήματα. Με τη βοήθεια των παλαιοτέρων και αυτών που είχαν περισσότερες γνώσεις, πολλοί από μας
|
||||
καταφέραμε να δούμε ότι το Linux δεν είναι απάνθρωπο, και ο χρήστης του Linux δεν είναι απομονωμένος.
|
||||
- Το καλοκαίρι του 1997 ξεκίνησε η μετάφραση του Linux-FAQ και πολλών HOWTOs στα ελληνικά, με συντονιστή το [Φώτη Γεωργάτο](mailto:gef@ceid.upatras.gr).
|
||||
- Κάπου στις αρχές του χειμώνα ξεκίνησε, από τον [Παναγιώτη Βρυώνη](mailto:vrypan@hol.gr) η ελληνικοποίηση του KDE, ενός γραφικού περιβάλλοντος για Linux.
|
||||
Παρουσίασή του θα υπάρχει σε ένα από τα υπόλοιπα τεύχη.
|
||||
- Το Δεκέμβριο του 1997, δημιουργήθηκε το [Linux.gr](http://www.linux.gr) ένα website το οποίο θα παρουσίαζε τα Linux-related resources στην Ελλάδα.
|
||||
Ευκολότερη πρόσβαση στον αρχάριο. Ευκολότερο να βρεις τη σελίδα, παρά τη mailing list.
|
||||
- Τώρα, ήρθε ο καιρός για ένα περιοδικό. Ένα newsletter με νέα, ειδήσεις, αναλύσεις, συμβουλές, χιούμορ και ότι άλλο χωράει στην ιδέα ενός περιοδικού
|
||||
\"παρέας\". Το περιοδικό που διαβάζετε τώρα, δεν έχει αρθρογράφους, δεν έχει εκδότες, δεν έχει έσοδα και έξοδα, δεν έχει σκοπιμότητες. Είναι μία κατάθεση
|
||||
ψυχής, μία πίεση του ελεύθερου χρόνου, όποιου ενδιαφέρεται να βοηθήσει στην ιδέα του Linux.
|
||||
|
||||
Η ιδέα γεννήθηκε μέσα στη λίστα, και σταθεροποιήθηκε σε ένα cafe στην Αθήνα. Μέσα από το περιοδικό θα παρουσιαστούν εν καιρώ όλες οι προσπάθειες για \"Ελληνικό
|
||||
Linux\". Όλες αυτές οι αξιόλογες προσπάθειες, οι οποίες αποδόσανε, άλλες περισσότερο και άλλες λιγότερο, όλες όμως βάλανε το λιθαράκι τους στην ανάπτυξη του
|
||||
Linux. Σας προκαλούμε - προσκαλούμε, όλους, να βοηθήσετε όσο μπορείτε, στην ανάπτυξη του περιοδικού, καθώς και σε όλες τις άλλες προσπάθειες που γίνονται για
|
||||
την ανάπτυξη και διάδοση του Linux. Συχνά πυκνά θα βλέπετε μέσα στις \"σελίδες\" του περιοδικού, προσκλήσεις βοήθειας σε διάφορα on-going projects. Μην τις
|
||||
αγνοήσετε. Όλα ξεκίνησαν από χόμπυ και φιλότιμο. Αν χαθούν αυτά θα χαθεί και η ουσία. Θα μας ξαναδιαβάσετε, και ελπίζουμε να σας διαβάσουμε και εμείς, σε ένα
|
||||
από τα επόμενα τεύχη.
|
||||
|
||||
Δεχόμαστε παρατηρήσεις, άρθρα, σχέδια, ιδέες, κριτική (αλλά μόνο καλόπιστη) και ότι άλλο έρθει στο μυαλό σας, στην ηλεκτρονική διεύθυνση του
|
||||
**[Magaz](mailto:magaz@linux.gr)**.
|
90
content/articles/01/02_hellas.md
Κανονικό αρχείο
90
content/articles/01/02_hellas.md
Κανονικό αρχείο
|
@ -0,0 +1,90 @@
|
|||
+++
|
||||
title = '\Ελληνες και Linux'
|
||||
date = '1998-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Γεωργάτος Φώτης gef@ceid.upatras.gr(mailto:gef@ceid.upatras.gr?subject=LINUX-MAGAZ)'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 2
|
||||
+++
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Το 1997 είναι αναμφισβήτητα η χρονιά που το Linux κέρδισε τους \'Ελληνες. Η χρονιά που έφυγε, μας αφήνει με σημαντικές προόδους στην ελληνική υποστήριξη του
|
||||
Λ.Σ., αναλυτική τεκμηρίωση στην Ελληνική γλώσσα, πληθώρα σελίδων στο Δίκτυο και ένα σύνολο από ένθερμους Linuxάδες που από ότι φαίνεται θα τραγανίσουν
|
||||
οποιοδήποτε πρόβλημα παρουσιαστεί στους \'Ελληνες το 1998.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Ας δούμε αναλυτικά την κατάσταση.
|
||||
|
||||
Αυτή την στιγμή η ελληνική Linux κοινότητα έχει περί τα 200 μέλη. Τα κυριότερα προβλήματα σε σχέση με τα Ελληνικά έχουν επιλυθεί μέσα από διάφορα πακέτα και
|
||||
καταγραφεί σε κείμενα. Το σύνολο της δουλειάς αυτής που έχει γίνει ή θα γίνει είναι η [ελληνική τεκμηρίωση του
|
||||
Linux](ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/translations/el/)
|
||||
|
||||
Τόσο το παρόν άρθρο, όσο και τα κείμενα και λογισμικό που αναφέρονται σε αυτό επιδέχονται βελτιώσεων. Εάν έχετε υπ\' όψιν σας κάτι που μας διαφεύγει ή δεν είναι
|
||||
ακριβές μην διστάσετε να ενημερώσετε το αντίστοιχο άτομο σχετικά. Ας μην ξεχνάμε ότι πάνω σε αυτή την φιλοσοφία είναι χτισμένο όλο το Linux. Παρ\' όλα αυτά,
|
||||
**σεβαστείτε τον χρόνο των εθελοντών** που είναι έτσι και αλλιώς πιεσμένος, και μην τους κάνετε ερωτήσεις χωρίς να έχετε διαβάσει τα HOWTO, FAQ, INFO-SHEET, τις
|
||||
οδηγίες, κλπ προσεχτικά. Για οτιδήποτε χρειαστείτε η Ελληνική Linux Κοινότητα είναι στη διάθεσή σας.
|
||||
|
||||
**1. Πακέτα εξελληνισμού του Linux**
|
||||
-------------------------------------------------------------
|
||||
|
||||
**2. Ελληνική τεκμηρίωση**
|
||||
---------------------------------------------------
|
||||
|
||||
**3. Ελληνικό Linux στο Internet**
|
||||
-----------------------------------------------------------
|
||||
|
||||
|
||||
### [1. Πακέτα εξελληνισμού του Linux]{#s1}
|
||||
|
||||
- [grISOXkbd-1.1](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/grISOXKb-1.1.tar.gz) (Δημήτρης Μπούρας και Λευτέρης Τσιντζέλης). Είναι το σημαντικότερο
|
||||
πακέτο για εξελληνισμό του Linux σε γραφικό περιβάλλον. Είναι αρκετά πλήρες, μόνο μειονέκτημα είναι η δυσκολία εγκατάστασής του για αρχάριους. Μην ξεχάσετε
|
||||
να βάλετε και [γραμματοσειρές](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/fonts) πρώτα!
|
||||
- greek12 (Αλέξιος Κουκούλας). Μάλλον είναι το πρώτο πακέτο που κυκλοφόρησε ευρέως για εξελληνισμό του Linux. Έχει πλέον ξεπεραστεί και αντικαθίσταται από το
|
||||
επόμενο:
|
||||
- [greek-console](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/greek-console-1.0.0-2.i386.tar.gz) (Κεραμίδας Γιώργος). Είναι εύκολο στην εγκατάσταση ακόμη
|
||||
και για αρχάριους, (υπάρχει και σε [rpm](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/greek-console-1.0.0-2.i386.rpm) ) και δίνει ελληνικά 737 και 928 σε
|
||||
περιβάλλον κονσόλας.
|
||||
- Υπάρχουν επίσης τα εξής στον [Αργέα](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/): **greekXfonts-full-1.1.tgz** (\'Αγγελος Χαρίτσης), **XgreekFonts**
|
||||
(Μωραϊτάκης Κωνσταντίνος), **X11greek** (Παναγιώτης Χρηστιάς), **a2ps** (Μανώλης Λουράκης και Γιάννης Μουζάκης), **ispell** (Γιάννης Καβακλής), **minicom**
|
||||
(Γιάννης Ιωάννου), **moreH** (Μανώλης Λουράκης).
|
||||
|
||||
|
||||
### [2. Ελληνική τεκμηρίωση]{#s2}
|
||||
|
||||
Τα κείμενα που βρίσκονται αυτή τη στιγμή στο στάδιο της ολοκλήρωσής τους είναι:
|
||||
|
||||
- [Linux-Hellenic-FAQ](http://students.ceid.upatras.gr/~gef/linux/docs/FAQ/). Συντηρείται από το Γεωργάτο Φώτη. Αυτό το κείμενο είναι η απευθείας μετάφραση
|
||||
του αγγλικού Linux-FAQ. Το περιεχόμενο του είναι **τυπικές ερωτήσεις** σχετικά με το Linux.
|
||||
- [Hellenic-HOWTO](http://students.ceid.upatras.gr/~gef/linux/docs/HOWTO/). Συντηρείται από το Γεωργάτο Φώτη. Αυτό το κείμενο έχει οτιδήποτε αφορά
|
||||
αποκλειστικά έναν Έλληνα, και στο μεγαλύτερο μέρος του ασχολείται με την σωστή **ρύθμιση των Ελληνικών** στο σύστημα.
|
||||
- [Hellenic-INFO-SHEET](http://students.ceid.upatras.gr/~keramida/linux/doc/INFO-SHEET/). Συντηρείται από τον Κεραμίδα Γιώργο. Αυτό το κείμενο έχει ουσιαστικά
|
||||
τις **προδιαγραφές του Linux**, και είναι, επίσης, μετάφραση του αγγλικού INFO-SHEET. Περιέχει συνοπτικά όλες τις τεχνικές λεπτομέρειες και δυνατότητες που
|
||||
έχει το λειτουργικό.
|
||||
|
||||
|
||||
### [3. Ελληνικό Linux στο Internet]{#s3}
|
||||
|
||||
Εκτός από την τεκμηρίωση μπορεί να κανείς να βρεί στο Internet τα εξής.
|
||||
|
||||
- Κόμβος [www.linux.gr](http://www.linux.gr/) Συντηρείται από το Γεωργάτο Φώτη και (φιλοδοξεί να) είναι το εστιακό σημείο για το Linux στην Ελλάδα. Περιέχει
|
||||
κυρίως τις τελευταίες εκδόσεις της ελληνικής τεκμηρίωσης και συνδέσμους σε άλλες σχετικές σελίδες στο Internet όπως τα παρακάτω.
|
||||
- Κόμβος [ftp.linux.gr](ftp://ftp.linux.gr) Συντηρείται από τον Γιώργο Κουλογιάννη και έχει μέχρι και 9GB λογισμικό για το Linux. Εκεί θα βρείτε τα τελευταία
|
||||
distributions, πυρήνες, κλπ.
|
||||
- Κανάλι IRC: [\#linux-gr](http://www.co.umist.ac.uk/~vp/irc/). Συντηρείται από το Βάϊο Παπαϊωάννου και είναι κατάλληλο για άμεσες ερωτήσεις και κουβέντα\...
|
||||
- Η ελληνική λίστα συζητήσεων [linux-greek-users](http://argeas.argos.hol.gr/linux-greek-users). Συντηρείται από το Γιάννη Ιωάννου και είναι ο σπόρος που τα
|
||||
γέννησε όλα :-). Μία πύλη προς [ομάδα συζητήσεων (news gateway)](news://edessa.topo.auth.gr/local.linux.greek.users), έχει στηθεί από τον Χρήστο Ρικούδη και
|
||||
Κώστα Λιαλιαμπή. Εάν θέλετε να γραφτείτε, στείλτε email στο <majordomo@argeas.argos.hol.gr>, με τη γραμμή \"subscribe linux-greek-users\" στο σώμα του
|
||||
μηνύματος.
|
||||
- Κόμβος ftp [argeas.argos.hol.gr](ftp://argeas.argos.hol.gr/pub/unix/linux/GREEK/). Συντηρείται από το Γιάννη Ιωάννου και είναι ο βασικός κόμβος για αρχεία
|
||||
που έχουν σχέση με εξελληνισμό. Όλα τα προγράμματα που έχουν σχέση με ελληνικά θα τα βρείτε εδώ, συγκεντρωμένα.
|
||||
- Το νέο μας on-line περιοδικό [magaz](http://www.linux.gr/magaz). Συντηρείται από το Μιχάλη Καμπριάνη, Παναγιώτη Βρυώνη, Γεωργάτο Φώτη.
|
||||
- Πρόσθετες σελίδες - που θα βρείτε και στο www.linux.gr - έχουν γράψει και άλλοι, αναφέρω όμως τα ονόματά τους: Αντώνης Παπαγεωργίου (Hellenic Linux
|
||||
Resources), Κώστας Βλάσσης (HELLUG), Βούλα Σανιδά, Θαλής Καλφιγόπουλος, Νίκος Αράχωβας. Ο Νίκος Αράχωβας έχει φτιάξει επίσης τον πιγκουίνο με την ελληνική
|
||||
σημαία, που φαίνεται σε πολλές ελληνικές σελίδες του Linux. Τρία ακόμα σημαντικά μέλη της ενεργής Ελληνικής Linux Κοινότητας είναι ο Αντώνης Καβαρνός, ο
|
||||
Λάμπρος Π. Ρορρής και ο Ευθύμιος Μαυρογεωργιάδης. Ο τελευταίος έχει αναλάβει και την συντήρηση της λίστας ελληνικής ορολογίας, μίας φιλόδοξης προσπάθειας να
|
||||
έχουμε έναν τυποποιημένο τρόπο για μετάφραση των αγγλικών όρων. Οι Τάσος Κάπιος, Κοξαράς Άρης, Σωτήρης Τσιμπόνης, Παπαδημητρίου Σπύρος, Γιάννης Μήτσος,
|
||||
Σακαλής Γιώργος, Μάματας Λευτέρης έχουν βοηθήσει σημαντικά στην ελληνική τεκμηρίωση. Ο Παναγιώτης Βρυώνης έχει αναλάβει τον [εξελληνισμό του
|
||||
KDE](http://users.hol.gr/~vrypan/cactus/kde.html), ενός πολλά υποσχόμενου γραφικού περιβάλλοντος για Unix.
|
||||
|
138
content/articles/01/03_free-software.md
Κανονικό αρχείο
138
content/articles/01/03_free-software.md
Κανονικό αρχείο
|
@ -0,0 +1,138 @@
|
|||
+++
|
||||
title = 'Περί ελεύθερου (τζάμπα) λογισμικού.'
|
||||
date = '1997-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Παναγιώτης Βρυώνης'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 3
|
||||
+++
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Αφού εφυγα από την συνάντηση που είχαμε με τους υπόλοιπους linux-άδες, πηγα να συναντήσω την κοπέλα μου. Εντάξει, είχα αργήσει, αλλά αυτό που δεν μπορουσε να
|
||||
καταλάβει είναι γιατί κάποιος θα μπορούσε να διαθέτει τόσο μεγάλο μέρος του χρόνου του χωρίς να πληρώνεται. Όταν μαλιστα της εξηγησα ότι δεν είμαι μόνο εγώ ο
|
||||
\"τρελός\" αλλά οτι υπάρχουν εκατομύρια άλλοι (μάλλον πιο τρελαμένοι) τότε το μυστήριο έγινε μεγαλύτερο\...*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Θυμάμαι και τις δικές μου πρώτες σκέψεις όταν βρέθηκα στον κόσμο του linux. Γιατί όλοι αυτοί οι άνθρωποι να προσφέρουν πόρους για να δημιουργηθεί κάτι το οποίο
|
||||
δεν θα τους αποφέρει οικονομικά οφέλη; Ακόμη και αν αυτό γίνεται, πώς είναι δυνατό κάτι τόσο πολύπλοκο όσο ένα ολόκληρο λειτουργικό σύστημα να δημιουργηθεί από
|
||||
εκατοντάδες ή χιλιάδες hackers που ο καθένας βάζει ένα λιθαράκι; Και για να πάω ένα βήμα παρακάτω, πως είναι δυνατόν το αποτέλεσμα αυτό να είναι ίδιας ποιότητας
|
||||
και σταθερότητας με το αποτέλεσμα μιας καλά οργανωμένης και στελεχωμένης ομάδας ειδικών που πληρώνεται πλουσιοπάροχα από μία εταιρεία;
|
||||
|
||||
**1. Τι κερδίζει ο προγραμματιστής;**
|
||||
---------------------------------------------------------------------
|
||||
|
||||
**2. Πώς μπορεί το αποτέλεσμα να είναι ποιοτικό;**
|
||||
----------------------------------------------------------------------------------
|
||||
|
||||
**3. Επιγραμματικά**
|
||||
----------------------------------------------------
|
||||
|
||||
|
||||
### [1. Τι κερδίζει ο προγραμματιστής;]{#s1}
|
||||
|
||||
Ας πάρουμε τα πράγματα με την σειρά και ας προσπαθήσουμε να ρίξουμε λίγο φώς στο \"γιατί\". Αν και δεν είναι δυνατό να προσδιορίσουμε τα ακριβή κίνητρα του κάθε
|
||||
προγραμματιστή που χωρίς να πληρώνεται κάθεται και συνεισφέρει σε μία ομάδα τον χρόνο του, τις ικανότητές του, τις γνώσεις του καθώς και το μηχάνημά του (εκεί
|
||||
δουλεύει), μπορούμε να σκιαγραφήσουμε κάποια από αυτά.
|
||||
|
||||
Είναι δεδομένο ότι όποιος ασχολείται με τον προγραμματισμό χωρίς να πληρώνεται το κάνει γιατί του αρέσει. Είναι το χόμπι του. Όπως κάποιος άλλος μπορεί να
|
||||
διέθετε όλο το Σαββατοκύριακό του για να φτιάξει μία βιβλιοθήκη στο δωμάτιό του ή ακόμη περισσότερο, θα πήγαινε να βοηθήσει ένα φίλο του που μαστορεύει και
|
||||
ζήτησε την βοήθειά του, έτσι και ο προγραμματιστής μας, διαθέτει τον χρόνο του για να γράψει ένα driver ή μία εφαρμογούλα ή να προσφέρει βελτιώσεις στην
|
||||
εφαρμογή που έγραψε κάποιος άλλος, ή ακόμη και να γράψει τα εγχειρίδια μίας εφαρμογής.
|
||||
|
||||
Βλέποντας τα πράγματα από την παραπάνω οπτική γωνία, μπορεί κανείς να καταλάβει ότι και μόνο η ικανοποίηση της ενασχόλησης με κάτι το οποίο θεωρούμε ενδιαφέρον
|
||||
είναι μια ουσιαστική ανταμοιβή. Υπάρχει όμως και μία ακόμη σημαντικότερη κατά την γνώμη μου: η δόξα και η αναγνώριση. Ένα καλό πρόγραμμα σημαίνει για τον ή τους
|
||||
δημιουργούς του αναγνώριση από ένα σωρό κόσμο (που στον χώρο του linux κατά κανόνα είναι και γνώστες του αντικειμένου). Μπορεί να μην δέχεται ο προγραμματιστής
|
||||
λεφτά για τις υπηρεσίες του, γίνεται όμως αποδέκτης αυτού που οι περισσότεροι θα ψάξουν να αγοράσουν με τα λευτά που κερδίζουν από την δουλειά τους: αναγνώριση.
|
||||
(Δεν είμαι εναντίον της αγοράς εργασίας, μην με παρεξηγήσετε, σκεφθείτε όμως σε μία καταναλωτική κοινωνία με ποιό βασικό κριτήριο ξοδεύουμε το μεγαλύτερο μέρος
|
||||
των χρημάτων μας.) Άλλωστε, η αναγνώριση και η φήμη μπορεί στο μέλλον να σας προσφέρουν μία πολύ καλη δουλειά\...
|
||||
|
||||
Δεν πρέπει να παραγνωρίσουμε και ένα ακόμη παράγοντα που οδηγεί κάποιον στο να γράψει (ή να συνεισφέρει ιδέες και κώδικα σε κάποιους που γράφουν) προγράμματα:
|
||||
την επίλυση ενός προβλήματος που αντιμετωπίζει ο ίδιος.
|
||||
|
||||
Ας πούμε για παράδειγμα ότι χρησιμοποιείτε ένα απλό διευθυνσιογράφο που βρήκατε χωρίς χρέωση στο Internet. Όλα καλά, αλλά θα σας βόλευε πάρα πολύ να μπορείτε να
|
||||
τυπώνετε καρτέλες με τις διευθύνσεις για να τις κολλάτε σε φακέλους. Επειδή όμως έχετε το σαράκι του προγραμματισμού κοιτάτε τον πηγαίο κώδικα (source code) και
|
||||
κάνετε μερικές προσθήκες που σαν αποτέλεσμα έχουν την ζητούμενη δυνατότητα. Από το σημείο αυτό κι έπειτα έχετε δύο επιλογές.
|
||||
|
||||
Η μία είναι να κρατήσετε τις αλλαγές για τον εαυτό σας θεωρώντας οτι είναι άδικο να επωφεληθεί κάποιος άλλος από τον δικό σας κόπο (αν και εσείς χρησιμοποιείτε
|
||||
το πρόγραμμα που προσφέρει κάποιος δωρεάν).
|
||||
|
||||
Η άλλη επιλογή είναι να στείλετε τις αλλαγές στον δημιουργό του προγράμματος. Αν αυτός θεωρεί ότι πρέπει να ενσωματωθούν στο πρόγραμμα του, θα το κάνει στην
|
||||
επόμενη έκδοση. Στην έκδοση αυτή θα δείτε και το όνομά σας ανάμεσα σε αυτούς που βοήθησαν και ίσως μετά από αρκετό καιρό να διαβάσετε σε ένα περιοδικό ότι το
|
||||
πρόγραμμα αυτό έχει εξελιχθεί σε ένα από τα πιο δυνατά προγράμματα της κατηγορίας του!
|
||||
|
||||
Εσείς τί θα επιλέγατε;
|
||||
|
||||
Οι λόγοι που ανέφερα μέχρι στιγμής δεν είναι βέβαια οι μοναδικοί. Σε αυτούς μπορούμε να συμπεριλάβουμε τον πειραματισμό με αντικείμενα που ένας συγκεκριμένος
|
||||
προγραμματιστής να μην έχει την δυνατότητα να ασχοληθεί στην εργασία του, την ανάπτυξη λογισμικού από μη κερδοσκοπικούς οργανισμούς και/ή πανεπιστήμια καθώς και
|
||||
τις περιπτώσεις που ένα πρόγραμμα ξεκιναέι σαν εμπορικό αλλά οι δημιουργοί/χρηματοδότες του χάνουν το ενδιαφέρον τους σε αυτό και αντί να το θάψουν το δίνουν
|
||||
στο ευρύ κοινό να κάνει ότι νομίζει καλύτερο με αυτό.
|
||||
|
||||
|
||||
### [2. Πώς μπορεί το αποτέλεσμα να είναι ποιοτικό;]{#s2}
|
||||
|
||||
Ας εξετάσουμε τώρα το ερώτημα πώς μπορεί ένα τόσο μεγάλο project όπως ένα λειτουργικό σύστημα να αναπτυχθεί τζάμπα και μάλιστα το αποτέλεσμα να είναι ποιοτικό.
|
||||
|
||||
Για να καταλάβουμε την απάντηση πρέπει πρώτα να δούμε τί είναι το GPL. Το GPL (GNU General Public Licence ή αλλιώς copyleft) είναι ένας τρόπος έκδοσης και
|
||||
διανομής προγραμμάτων που διασφαλίζει την ελευθερία στο λογισμικό. Όπως αναφέρει και το κείμενο που περιγράφει το GPL, όταν λέμε ελευθερία δεν εννοούμε μόνο
|
||||
χωρίς χρέωση, αλλά την ελευθερία να διανέμει κανείς το χωρίς χρέωση λογισμικό (και να πληρώνεται για αυτό αν το επιθυμεί) την δυνατότητα να δει τον πηγαίο
|
||||
κώδικα, να τον αλλάξει ή και να χρησιμοποιήσει τμήματά του σε άλλα προγράμματα και όλα αυτά τα δικαιώματα να είναι κατοχυρωμένα από τον νόμο.
|
||||
|
||||
Το Linux για παράδειγμα είναι κατοχυρωμένο με το GPL. Ο αρχικός δημιουργός του, ο Linus Torvalds, λειτουργεί περισσότερο σαν μάνατζερ του όλου εγχειρήματος:
|
||||
είναι αυτός που δέχεται τις τροποποιήσεις και τις νέες δυνατότητες, τις ενσωματώνει ή τις απορίπτει και εκδίδει την νέα έκδοση του κυρίως μέρους του Linux, του
|
||||
πυρήνα όπως λέγεται. Ο πηγαίος κώδικας (που από το GPL ορίζεται ως η μορφή στην οποία μπορούν να γίνουν ευκολότερα αλλαγές στο πρόγραμμα) είναι διαθέσιμη σε
|
||||
όποιον ενδιαφέρεται να την δει και να την τροποποιήσει.
|
||||
|
||||
Ο περισσότερος κόσμος θεωρεί ότι για να γίνει ένα καλό πρόγραμμα χρειάζεται κάποιος, ή έστω μία μικρή ομάδα, που θα είναι αρκετά ευφυής για να συλλάβει την
|
||||
αρχική ιδέα και να την υλοποιήσει χωρίς λάθη. Αυτή η αντίληψη όμως απέχει πολύ από την πραγματικότητα. Μερικοί από τους λόγους;
|
||||
|
||||
- Ένα καλό πρόγραμμα έχει ανάγκη από χρήστες και μόνο αυτοί μπορούν να προσδιορίσουν με ακρίβεια τις ανάγκες τους.
|
||||
- Όταν μιλάμε για μεγάλα προγράμματα, δεν είναι δυνατό η υλοποίηση να γίνει χωρίς λάθη (bugs), είτε στην λογική (στον αλγόριθμο) είτε στην συγραφή του
|
||||
προγράμματος. Λυπηρό ίσως, αλλά ΔΕΝ ΥΠΑΡΧΕΙ ΤΕΛΕΙΟ ΠΡΟΓΡΑΜΜΑ !!!
|
||||
- Ένα καλό πρόγραμμα πρέπει να συνοδεύεται από κατατοπιστικά εγχειρίδια που θα βοηθήσουν τους χρήστες του.
|
||||
- Πρέπει να μπορεί να προσαρμόζεται με νέες εκδόσεις στα δεδομένα που επικρατούν στον χώρο και τα οποία αλλάζουν κάθε τόσο.
|
||||
|
||||
Η αντιμετώπιση όλων των παραπάνω στον χώρο του Linux, με την βοήθεια του GPL είναι πραγματικά εντυπωσιακή.
|
||||
|
||||
Η πολιτική του ελεύθερου λογισμικού και της αναγνώρισης όσων βοηθούν με τον ένα ή τον άλλο τρόπο κάνουν πολλούς από τους χρήστες να αισθάνονται ότι είναι και
|
||||
μέρος της ομάδας ανάπτυξης του προγράμματος. Έτσι διασφαλίζεται μία συνεχής ροή παρατηρήσεων, εντοπισμού λαθών τροποποιήσεων και ιδεών προς τους
|
||||
προγραμματιστές. Τα bugs εντοπίζονται πολύ γρήγορα και συχνά η αναφορά για αυτά συνοδεύεται και από τον προσδιορισμό του κοματιού του πηγαίου κώδικα που είναι
|
||||
ελλατωματικός καθώς και από την προτεινόμενη διόρθωση (βλέπετε ο πηγαίος κώδικας δεν είναι επτασφράγιστο μυστικό όπως στην περίπτωση των εμπορικών
|
||||
προγραμμάτων!). Όπως λέει και ο Eric S. Raymond στο άρθρο του The Cathedral and the Bazzar <http://www.kde.org/food/cathedral/cathedral-paper.html>, *\"Δοθέντων
|
||||
αρκετών ματιών, όλα τα bugs είναι ρηχά\"*. Το παράδειγμα του Linux είναι αρκετό για να πείσει και τον πιο δύσπιστο: Θεωρείται από τα πιο σταθερά λειτουργικά
|
||||
συστήματα!
|
||||
|
||||
Νομίζω ότι ενδιαφέρον είναι και αυτό που απάντησε σε μία σχετική ερώτηση ο ίδιος ο Linus ( [σε μια συνέντευξή
|
||||
του.](http://students.ceid.upatras.gr/~keramida/linux/doc/linus.html)) *\"Όταν μιλάμε για λογισμικό προτιμώ σαφώς το ελεύθερο λογισμικό γιατί πολύ σπάνια έχω
|
||||
δεί ένα πρόγραμμα που να δουλεύει αρκετά καλά για τις ανάγκες μου και το να έχεις τον πηγαίο κώδικα μπορεί να σε γλιτώσει.\"*
|
||||
|
||||
Ένα άλλο θέμα είναι η ταχύτητα με την οποία αναπτύσεται μία εφαρμογή. Ειδικά στα εμπορικά προγράμματα, είναι δεδομένο ότι η επιτυχία ενός προγράμματος μπορεί να
|
||||
κριθεί από το αν βγήκε στην διανομή έγκαιρα, που σημαίνει ότι η ταχύτητα με την οποία το πρόγραμμα θα αναπτυχθεί είναι κρίσιμος παράγοντας. Στην περίπτωση του
|
||||
ελεύθερου λογισμικού (GPL) οι προγραμματιστές έχουν ένα ακόμη πλεονέκτημα: μπορούν να χρησιμοποιήσουν κώδικα που είναν γράψει άλλοι! Όπως λένε, οι καλοί
|
||||
προγραμματιστές ξέρουν τί να γράψουν, οι μεγάλοι προγραμματιστές ξέρουν τί να ξαναγράψουν (και να ξανα χρησιμοποιήσουν).
|
||||
|
||||
Η ελεύθερη πρόσβαση στον πηγαίο κώδικα, η εύκολη και άμμεση επικοινωνία με τους προγραμματιστές καθώς και το κλίμα αλληλοβοήθειας που επικρατεί στον χώρο του
|
||||
ελέυθερου λογισμικού επιτρέπουν και οδηγούν πολλούς από τους χρήστες να γράψουν εγχειρίδια χρήσης και άλλα βοηθητικά κείμενα σχετικά με το πρόγραμμα. Όποιος
|
||||
έχει αμφιβολία για αυτό, ας ρίξει μία ματιά στο <http://sunsite.unc.edu/LDP> για να δει το πλήθος και ποιότητα των κειμένων σχετικά με την χρήση και εγκατάσταση
|
||||
του Linux.
|
||||
|
||||
Ο κώδικας που γράφεται στο πλαίσιο του ελεύθερου λογισμικού είναι κατά μέσο όρο πολύ υψηλών προδιαγραφών. Ο λόγος είναι ότι οι προγραμματιστές χρειάζονται (αφού
|
||||
συνήθως θέλουν να καλύψουν κάποια δικιά τους ανάγκη) και αγαπούν τον κώδικα που γράφουν (κάτι που δεν ισχύει πάντα στην περίπτωση εμπορικού κώδικα που γράφεται
|
||||
γιατί πρέπει να καλύψει την ανάγκη κάποιου πελάτη).
|
||||
|
||||
Τέλος, καθώς ο χώρος αλλάζει, κάποιοι θα χρειαστούν μία νέα δυνατότητα που ή θα ζητήσουν από τους προγραμματιστές που αρχικά ανέπτυξαν την εφαρμογή ή θα την
|
||||
προσθέσουν μόνοι τους, άν γνωρίζουν προγραμματισμό. Ανακοινώσεις της μορφής *\"Ο τάδε πρότεινε αυτή την δυνατότητα, υπάρχει κάποιος που ενδιαφέρεται να την
|
||||
υλοποιήσει\"* είναι πολύ συχνές σε χώρους που αναπτύσεται ελεύθερο λογισμικό. Το πρόγραμμα θα συνεχίσει να εξελίσεται και να προσαρμόζεται όσο οι
|
||||
χρήστες-προγραμματιστές του το θεωρούν χρήσιμο. Ακόμη και αν ο αρχικός προγραμματιστής κάποια στιγμή αποφασίσει να αποτραβηχθεί, πολύ συχνά θα το \"υιοθετήσει\"
|
||||
|
||||
### [3. Επιγραμματικά]{#s3}
|
||||
|
||||
Προσπάθησα μέσα από αυτό το άρθρο να εξηγήσω πώς δουλεύει ο κόσμος του ελεύθερου λογισμικού, ένας κόσμος που σε εμάς που έχουμε μάθει να λειτουργούμε με τους
|
||||
κανόνες της αγοράς μπορεί να φαίνεται παράλογος.
|
||||
|
||||
Άν ενδιαφέρεστε να μάθετε περισσότερα, επισκευθείτε τις διευθύνσεις:
|
||||
|
||||
- <http://www.fsf.org/>
|
||||
- και <http://www.kde.org/food/food.html>
|
||||
|
336
content/articles/01/04_coffee-howto.md
Κανονικό αρχείο
336
content/articles/01/04_coffee-howto.md
Κανονικό αρχείο
|
@ -0,0 +1,336 @@
|
|||
+++
|
||||
title = 'Πώς φτιάχνεται ένας γκαϊφές'
|
||||
date = '1998-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Γεωργάτος Φώτης gef@ceid.upatras.gr(mailto:gef@ceid.upatras.gr?subject=COFFEE-HOWTO)'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 4
|
||||
+++
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Μία από τις πιο ενοχλητικές ερωτήσεις που έχω ακούσει για λογισμικό είναι εάν φτιάχνει καφέ. Ε, ναι λοιπόν, φτιάχνει. Και καλό καφέ.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Επί μακρόν την ανθρωπότητα την εβασάνιζε το πώς θα ημπορούσε να χρησιμοποιήσει τον υπολογιστή, ώστε να παράγει καφέ. Τον καφέ τον χρειαζόμαστε για καθόμαστε
|
||||
στον υπολογιστή με τις ώρες χωρίς να νυστάζουμε, διότι ως γνωστόν την νύχτα γράφεται ο καλύτερος κώδικας.
|
||||
|
||||
Το κυριότερο πρόβλημα είναι να συνδέσουμε την καφετιέρα με τον υπολογιστή και να την ελέγχουμε μέσω λογισμικού. Αυτό συνήθως ανάγεται σε ένα κύκλωμα διακόπτη
|
||||
ON/OFF, που ελέγχει την τροφοδοσία της καφετιέρας.
|
||||
|
||||
**1. Είδη καφέ**
|
||||
-----------------------------------------------
|
||||
|
||||
- [1.1 Ελληνικός](#ss1.1)
|
||||
- [1.2 Γαλλικός](#ss1.2)
|
||||
- [1.3 Nescaffe](#ss1.3)
|
||||
- [1.4 frappe](#ss1.4)
|
||||
- [1.5 freddo](#ss1.5)
|
||||
- [1.6 cappuccino](#ss1.6)
|
||||
- [1.7 espresso](#ss1.7)
|
||||
|
||||
**2. Κυκλώματα σύνδεσης της καφετιέρας**
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
- [2.1 Οδήγηση με 0-5V από τον υπολογιστή](#ss2.1)
|
||||
- [2.2 \'Ελεγχος με Relay](#ss2.2)
|
||||
- [2.3 \'Ελεγχος με TRIAC \#1](#ss2.3)
|
||||
- [2.4 \'Ελεγχος με TRIAC \#2](#ss2.4)
|
||||
|
||||
**3. Λογισμικό**
|
||||
-----------------------------------------------
|
||||
|
||||
- [3.1 Πρόγραμμα σε C](#ss3.1)
|
||||
- [3.2 Σαν device driver](#ss3.2)
|
||||
- [3.3 Διασύνδεση με Internet](#ss3.3)
|
||||
|
||||
**4. Συμπτώματα υπερδοσολογίας**
|
||||
---------------------------------------------------------------
|
||||
|
||||
**5. Επεκτάσεις**
|
||||
------------------------------------------------
|
||||
|
||||
**6. Αναφορές**
|
||||
----------------------------------------------
|
||||
|
||||
|
||||
### [1. Είδη καφέ]{#s1}
|
||||
|
||||
### [1.1 Ελληνικός]{#ss1.1}
|
||||
|
||||
Είναι επίσης γνωστός και ως τούρκικος, αλλά είναι παραλλαγή του. Παλιά είχαν για σηματάκι τον παπαγάλο, αλλά τώρα χρησιμοποιούν τον πιγκουίνο. Χαρακτηριστικό
|
||||
του καφέ αυτού είναι το κατακάθι στον πάτο του ποτηριού, που μπορεί να χρησιμεύσει για να μαντέψετε την ατυχία σας.
|
||||
|
||||
Αναμιγνύουμε καφέ και ζάχαρη στη σωστή αναλογία, με ποσότητα νερού αντιστοίχου του φλιτζανίου. Παραδοσιακά παρασκευάζεται σε ζεσεοδοχείο (μπρίκι) με γκαζιέρα,
|
||||
αλλά απουσία φτηνών εξαρτημάτων για τον έλεγχο του αερίου, θα χρησιμοποιήσουμε ένα απλό μάτι. (εεε! της κουζίνας)
|
||||
|
||||
Οι κατηγορίες του ελληνικού καφέ είναι: (κουταλιές)
|
||||
|
||||
- Γλυκός: 1 καφέ, 2 ζάχαρη
|
||||
- Βαρύ γλυκός: 2 καφέ, 3 ζάχαρη
|
||||
- Γλυκύβραστος: 1/2 καφέ, 1 ζάχαρη
|
||||
- Μέτριος: 1 καφέ, 1 ζάχαρη
|
||||
- Σκέτος (Πικρός): 1 καφέ
|
||||
- Πολλά βαρύς και όχι: 2 καφέ, συνοδεύεται με ναργιλέ
|
||||
|
||||
Ανακατεύουμε συνεχώς μέχρι το μίγμα να αρχίσει να ξεχειλίζει, οπότε με γρήγορες κινήσεις το παίρνουμε από τη φωτιά. Αργείς-χάνεις, απλή λογική. Το βήμα αυτό
|
||||
συζητείται να υλοποιηθεί με robot.
|
||||
|
||||
### [1.2 Γαλλικός]{#ss1.2}
|
||||
|
||||
Δημοφιλής καφές για προγραμματιστές μιας και δεν χρειάζεται προσοχή. Η ανάρπαστη γεύση του έχει εμπνεύσει χιλιάδες προγραμματιστών σε έργα λογισμικού αμύθητης
|
||||
τελειότητας, υλοποιημένα άγρια χαράματα. Τα Windows για παράδειγμα είναι γραμμένα 5:00 το πρωί, με τα νεύρα ΝΑ. Εγγυημένο αποτέλεσμα.
|
||||
|
||||
### [1.3 Nescaffe]{#ss1.3}
|
||||
|
||||
Το κουνάς πριν
|
||||
|
||||
### [1.4 frappe]{#ss1.4}
|
||||
|
||||
Το κουνάς μετά
|
||||
|
||||
### [1.5 freddo]{#ss1.5}
|
||||
|
||||
Δύσκολος καφές.
|
||||
|
||||
Μην τον ζητήσετε από τον τύπο στο Πάρκο της Ειρήνης/Πανεπιστήμιο Πάτρας
|
||||
|
||||
### [1.6 cappuccino]{#ss1.6}
|
||||
|
||||
### [1.7 espresso]{#ss1.7}
|
||||
|
||||
|
||||
### [2. Κυκλώματα σύνδεσης της καφετιέρας]{#s2}
|
||||
|
||||
Το σχηματικό είναι κάπως έτσι:
|
||||
|
||||
**ΣΗΜΕΙΩΣΗ: \'Εχει παρατηρηθεί ότι μερικά σχήματα δεν φαίνονται σωστά. Σε τέτοια περίπτωση, δείτε τα με \"View-\>Document source\".**
|
||||
|
||||
> --------- 0-5V --------- ~220V -----------
|
||||
> | Η/Υ |===>===|Ελεγχος|========|Καφετιέρα|
|
||||
> --------- --------- -----------
|
||||
|
||||
Η γενική ιδέα είναι ότι παίρνουμε μία τάση ελέγχου από τον υπολογιστή, ο οποία οδηγεί ένα κύκλωμα με απομόνωση (OPTOTRIAC ή RELAY).
|
||||
|
||||
Εάν η καφετιέρα είναι μεγάλη (πχ περισσότερο από 200W), χρησιμοποιείστε οπωσδήποτε RELAY, αλλιώς μπορείτε να βάλετε TRIAC. Εάν δεν κάνετε ακριβώς αυτό, απλά θα
|
||||
πετάξετε τα λεφτά σας με τον ή με τον άλλο τρόπο.
|
||||
|
||||
Σημειώστε ότι τα κυκλώματα που έχουμε παρακάτω, είναι όλα τουλάχιστον μια φορά δοκιμασμένα, αλλά η διασύνδεση με τον υπολογιστή γίνεται με ΔΙΚΗ ΣΑΣ ΕΥΘΥΝΗ. Εάν
|
||||
δεν έχετε εμπειρία με ηλεκτρονικά, καλόν θα είναι να μην την αποκτήσετε με αυτά τα κυκλώματα, γιατί θα είναι κακή μάλλον\...
|
||||
|
||||
Να είστε πολύ προσεχτικοί στους πειραματισμούς με τα 220V, και δεν θα είναι πολυτέλεια να χρησιμοποιήσετε ασφάλεια ανάλογη του φορτίου σας\...
|
||||
|
||||
### [2.1 Οδήγηση με 0-5V από τον υπολογιστή]{#ss2.1}
|
||||
|
||||
Εδώ είναι ένα απλό παράδειγμα για το πώς θα πάρετε μια απλή τάση 0-5V από τον υπολογιστή, μέσω της παράλληλης θύρας.
|
||||
|
||||
> Back View ----- Pin 10 - ACK
|
||||
> Male DB-25 | | Pin 9 - D7
|
||||
> Connector | | Pin 2 - D0
|
||||
> v v v Pin 1 -
|
||||
> ~Strobe
|
||||
> ____________________________________________________________
|
||||
> / \
|
||||
> \ 13 12 11 10 9 8 7 6 5 4 3 2 1 /
|
||||
> \ /
|
||||
> \ 25 24 23 22 21 20 19 18 17 16 15 14 /
|
||||
> \______________________________________________________/
|
||||
|
||||
Ο ακροδέκτης 1 είναι το Strobe( αρνητικής λογικής)
|
||||
|
||||
Οι ακροδέκτες 2-9 είναι τα σήματα του DATA BUS, όπως αυτά διαμορφώνονται, έπειτα από μία εντολή τύπου OUT στην παράλληλη θύρα.
|
||||
|
||||
Ο ακροδέκτης 10 είναι το ACK, δηλαδή τον ελέγχετε εσείς, παράγοντας interrupt.
|
||||
|
||||
Τα 18-25 είναι βραχυκυκλωμένα και είναι η γείωση.
|
||||
|
||||
Πιο αναλυτικά:
|
||||
|
||||
> <= in DB25 Cent Name of Reg
|
||||
> => out pin pin Signal Bit Function Notes
|
||||
> ------ ---- ---- -------- --- -----------------------------
|
||||
> => 1 1 -Strobe C0- Set Low pulse >0.5 us to send
|
||||
> => 2 2 Data 0 D0 Set to least significant data
|
||||
> => 3 3 Data 1 D1 ...
|
||||
> => 4 4 Data 2 D2 ...
|
||||
> => 5 5 Data 3 D3 ...
|
||||
> => 6 6 Data 4 D4 ...
|
||||
> => 7 7 Data 5 D5 ...
|
||||
> => 8 8 Data 6 D6 ...
|
||||
> => 9 9 Data 7 D7 Set to most significant data
|
||||
> <= 10 10 -Ack S6+ IRQ Low Pulse ~ 5 uS, after accept
|
||||
> <= 11 11 +Busy S7- High for Busy/Offline/Error
|
||||
> <= 12 12 +PaperEnd S5+ High for out of paper
|
||||
> <= 13 13 +SelectIn S4+ High for printer selected
|
||||
> => 14 14 -AutoFd C1- Set Low to autofeed one line
|
||||
> <= 15 32 -Error S3+ Low for Error/Offline/PaperEnd
|
||||
> => 16 31 -Init C2+ Set Low pulse > 50uS to init
|
||||
> => 17 36 -Select C3- Set Low to select printer
|
||||
> == 18-25 19-30, Ground
|
||||
|
||||
### [2.2 \'Ελεγχος με Relay]{#ss2.2}
|
||||
|
||||
Το πιο απλό κύκλωμα που μπορεί να φτιάξει κανείς είναι το εξής:
|
||||
|
||||
> Vcc
|
||||
> |
|
||||
> +------+
|
||||
> | __|__
|
||||
> Relay /^\ Diode 1N4002
|
||||
> Coil /---\
|
||||
> | |
|
||||
> +------+
|
||||
> |
|
||||
> | /
|
||||
> 4.7K B |/ C
|
||||
> parallel port >-\/\/\/\/---| NPN Transistor: BC547A or 2N2222A
|
||||
> data pi |\ E
|
||||
> | V
|
||||
> |
|
||||
> parallel port >--------------+
|
||||
> ground pin |
|
||||
> Ground
|
||||
|
||||
Συνδέστε το Vcc με τάση αντίστοιχη με τον τύπο του relay που έχετε βρει (5 ή 12V). Προφανώς το relay πρέπει να διαλέξετε να είναι επαρκές για την καφετιέρα σας.
|
||||
Αυτό ίσως εξηγεί τους κακούς καφέδες: Οι barmen συχνά κάνουν το λάθος να βάζουν το relay αντί στον συλλέκτη (C), στον εκπομπό (E) του τρανζίστορ, πολώνοντάς το
|
||||
έτσι με λάθος τρόπο. Η δίοδος 1N4002 είναι για να προστατεύει το τρανζίστορ από τα ανάστροφα ρεύματα του Relay, όταν το ρεύμα σε αυτό αλλάζει. Εάν δεν την
|
||||
βάλετε, λογικά το τρανζίστορ θα γίνει πιο μαύρο και θα μυρίζει.
|
||||
|
||||
### [2.3 \'Ελεγχος με TRIAC \#1]{#ss2.3}
|
||||
|
||||
Εάν θέλετε ένα απλό κύκλωμα μπορείτε να χρησιμοποιήσετε ένα Motorola MOC301\[012\] (οδηγός για TRIAC), μαζί με ένα γενικής χρήσης TRIAC όπως το SC141D. Το
|
||||
πλεονέκτημα αυτού του κυκλώματος είναι ότι δεν χρειάζεται τάση τροφοδοσίας.
|
||||
|
||||
Για μη επαγωγικό φορτίο το κύκλωμα είναι ως εξής:
|
||||
|
||||
> 270 1 +-------+ 6 180
|
||||
> +5v -VAVAVA-----+ +----VAVAVA-----+-------------- Line Hot
|
||||
> 2 | MOC | |
|
||||
> TTL in ---------+ 3012 +nc VA SC141D
|
||||
> | | 4 / |
|
||||
> nc+ +------------/ |
|
||||
> +-------+ +----\/\/\/---- Line Neutral
|
||||
> LOAD
|
||||
|
||||
Εάν πρόκειται να δουλέψετε με 220V, προτιμήστε ένα 3021. Εάν έχετε επαγωγικό φορτίο ενδείκνυται να βάλετε bypass πυκνωτές, δείτε σχετικά Motorola Application
|
||||
Note AN-780. Οι καφετιέρες είναι κυρίως ωμικά φορτία (το θερμαντικό νήμα) και όχι επαγωγικά (όπως είναι πχ ένα μοτέρ) αλλά επειδή ποιος ξέρει τι καφετιέρα
|
||||
έχετε\...
|
||||
|
||||
### [2.4 \'Ελεγχος με TRIAC \#2]{#ss2.4}
|
||||
|
||||
> +5VDC
|
||||
> | 180 180 2.2k
|
||||
> +---/\/\/\----+-----+ +----/\/\/-+--/\/\/\---+-------> 120V
|
||||
> | 1| |6 | | Hot
|
||||
> | +=====+ | | MT1
|
||||
> | | MC | TRIAC | +-+
|
||||
> | | 3032| Driver | G | | TRIAC
|
||||
> | +=====+ | /| |
|
||||
> \ 2| |4 | / +-+
|
||||
> 2N3904 |----+ | | | | MT2
|
||||
> / | +--------- | -------+ |
|
||||
> V \ | | |
|
||||
> | / | \ |
|
||||
> | \ 43 .01u --- 10k / |
|
||||
> | / 500V --- \ |
|
||||
> | | | / |
|
||||
> +------+ | | | Neutral
|
||||
> | +--------+--+---o o--> 120V
|
||||
> / load
|
||||
> >-/\/\--| 2N3904
|
||||
> \
|
||||
> V
|
||||
> |
|
||||
> ---
|
||||
> ///
|
||||
> You should change resistors accordingly for 220V.
|
||||
|
||||
Περιγραφή κυκλώματος:
|
||||
|
||||
Το MC3032 είναι ένας οπτοαπομονωτής, κατάλληλος για οδήγηση TRIAC. Η αντίσταση των 180Ω ρυθμίξει το ρεύμα για τον εκπέμπον LED του οπτοαπομονωτή. Εάν
|
||||
χρειάζεται, αλλάξτε την τιμή της αντίστασης για να πάρετε μία λογική τιμή ρεύματος (πχ 15 mA).
|
||||
|
||||
Δώστε σημασία στην ένδειξη 500V για τον πυκνωτή των .01μF. Σημειώσατε ότι δεν μπορείτε να ελέγξετε αυτό το κύκλωμα δίχως φορτίο. Το TRIAC δεν θα αλλάξει
|
||||
αγωγιμότητα παρά μόνον εάν συνδεθεί με την πηγή παροχής εναλλασόμενου ρεύματος (δίκτυο) και με το φορτίο. Προσέξτε το φορτίο να μην είστε ΕΣΕΙΣ.
|
||||
|
||||
|
||||
### [3. Λογισμικό]{#s3}
|
||||
|
||||
\'Εφτασεεεε\...
|
||||
|
||||
### [3.1 Πρόγραμμα σε C]{#ss3.1}
|
||||
|
||||
Φτιάξτε ένα εκτελέσιμο, που θα κάνει χοντρικά τα εξής:
|
||||
|
||||
- Θα παίρνει τα κατάλληλα δικαιώματα για την διεύθυνση I/O, με αίτηση στον πυρήνα, μέσω της ioperm: πχ ioperm( BASE, range ,1);
|
||||
- θα εκτελεί το κατάλληλο out request, για να επιβάλει την σωστή τάση στην παράλληλη θύρα. πχ outb( 1, BASE );
|
||||
- Θα περιμένει κατάλληλο χρονικό διάστημα για να ψηθεί ο καφές, ( καλόν θα είναι αυτό να το διαβάζει από την γραμμή εντολών )
|
||||
- στην συνέχεια θα κλείνει την καφετιέρα. outb( 0 , BASE );
|
||||
- Προαιρετικά, θα δίνει πίσω την θύρα με ioperm( BASE, range, 0);
|
||||
|
||||
Όπου BASE = 0x3bc για /dev/lp0, 0x378 για /dev/lp1, και 0x278 για /dev/lp2, range=8.
|
||||
|
||||
Καλόν θα είναι να το κάνετε setuid, για να μπορεί όλος ο κόσμος να φτιάχνει καφέ.
|
||||
|
||||
### [3.2 Σαν device driver]{#ss3.2}
|
||||
|
||||
Δεν έχετε παρά να διαβάσετε το kernel hacker\'s guide, να υλοποιήσετε έναν device driver (μπορεί να είναι και user space). Πλιιζ, κάνετέ το module, να μην
|
||||
κάνουμε compile όλη την ώρα. Μετά θα γράφετε:
|
||||
|
||||
echo baryglykos >/dev/coffee
|
||||
|
||||
Και θα έχετε ζεστό καφέ σε 1 λεπτό. Θυμηθείτε να δώσετε τα σωστά permission στο /dev/coffee, ανάλογα με το εάν θέλετε να φτιάχνει καφέ μόνο ο root ή όχι.
|
||||
|
||||
Το πλεονέκτημα αυτής της μεθόδου είναι ότι επιτρέπει να χρησιμοποιηθεί το ACK της παράλληλης θύρας, ώστε οι \"έξυπνες\" καφετιέρες να μπορούν να παράγουν
|
||||
interrupt.
|
||||
|
||||
Αφήνεται σαν άσκηση.
|
||||
|
||||
### [3.3 Διασύνδεση με Internet]{#ss3.3}
|
||||
|
||||
Αφού έχετε υλοποιήσει το πρόγραμμα σε C (βλέπε παραπάνω), δεν έχετε παρά να φτιάξετε ένα cgi τσι σειράς (ας είναι και β\' διαλογής), που θα καλεί το
|
||||
προγραμματάκι για να φτιάξει τον καφέ. Τι web server? apache φυσικά\...
|
||||
|
||||
|
||||
### [4. Συμπτώματα υπερδοσολογίας]{#s4}
|
||||
|
||||
- ευεξία
|
||||
- νευρικότητα
|
||||
- ταχυκαρδία ή καρδιακή αρυθμία
|
||||
- τέντωμα μυών
|
||||
- δυσκοιλιότητα :-(
|
||||
|
||||
|
||||
### [5. Επεκτάσεις]{#s5}
|
||||
|
||||
Αυτές είναι μερικές ιδέες που είχαμε:
|
||||
|
||||
- Με λίγη προσπάθεια η ηλεκτρονική καφετιέρα μπορεί να επεκταθεί ώστε να υποστηρίζει τοστ, παστίτσιο, κουραμπιέδες κλπ.
|
||||
- Cluster με 8 καφετιέρες. Αυτό θα επιτρέπει να έχετε καφέ ακόμη και όταν \"πέφτει\" η μία καφετιέρα, με αντίστοιχη μείωση της απόδοσης. Η παράλληλη
|
||||
ανυσματική καφετιέρα είναι στα υπ\' όψιν.
|
||||
- Εάν θέλουμε πλήρη αυτοματοποίηση χρειαζόμαστε επιπρόσθετα κυκλώματα και αισθητήρες, ώστε να ελέγχουμε την ροή του νερού, την θερμοκρασία του, την ποσότητα
|
||||
του καφέ κλπ.
|
||||
- Στο μέλλον σκεφτόμαστε να υλοποιήσουμε και SNMP. Α μα πια, αυτές οι καφετιέρες να μην έχουν έθερνετ ιντερφέις\...
|
||||
- Σειριακή καφετιέρα στα 115Kbps.
|
||||
|
||||
|
||||
### [6. Αναφορές]{#s6}
|
||||
|
||||
- [Χριστόφορος Κολόμβος](http://sunsite.unc.edu/expo/1492.exhibit/c-Columbus/columbus.html). Το πραγματικό του όνομα είναι Cristobal Colon. \'Εφερε πρώτος τον
|
||||
καφέ από την Αμερική, την οποία πρώτος (από τους Ευρωπαίους) ανακάλυψε το 1492.
|
||||
- <http://daisy.uwaterloo.ca/~alopez-o/caffaq.html> Το απόλυτο κείμενο σχετικά με τον καφέ. Βασικά, είναι το coffee-FAQ από το Internet.
|
||||
- <http://lonestar.texas.net/~andrew/f_pc_.htm> Πολλά κυκλώματα σε ASCII, ανάμεσά τους και με έλεγχο από παράλληλη
|
||||
- <http://shell.rmi.net/~hisys/parport.html> \'Οτι θέλατε να μάθετε για την παράλληλη θύρα και δεν τολμούσατε να ρωτήσετε.
|
||||
- <http://sunsite.unc.edu/LDP/HOWTO/mini/IO-Port-Programming> Προγραμματισμός I/O θυρών σε Linux.
|
||||
- <http://www.redhat.com:8080/HyperNews/get/khg.html> Πώς να γράψετε τους δικούς device drivers. Εμπρός λοιπόν, τι κάθεστε;
|
||||
- <http://www.hut.fi/Misc/Electronics/circuits/parallel_output.html> Ας το θέσουμε έτσι: εάν ασχολείστε με ηλεκτρονικά, οι σελίδες του Tomi Engdahl είναι
|
||||
must.
|
||||
- <http://www.yahoo.com/Computers_and_Internet/Internet/Entertainment/Interesting_Devices_Connected_to_the_Net/Coffee_Machines/> Καφετιέρες on-line. Δυστυχώς,
|
||||
δεν έχει συγκριτικά test.
|
||||
- <http://www.cs.su.oz.au/~bob/coffee.html> Η εν λόγω συσκευή προσφέρει μόνο cappuccino. \'Αντε αναβαθμίστε το, ρε παιδιά.
|
||||
- <http://einstein.et.tudelft.nl/~janssen/> Ζεστός ολλανδικός καφές
|
||||
- http://circe.chinalake.navy.mil/cgi-bin/spion/snapit.cgi
|
||||
- http://www.cl.cam.ac.uk/coffee/coffee.html
|
||||
- http://www.menet.umn.edu/coffeecam/
|
||||
|
34
content/articles/01/05_realworld.md
Κανονικό αρχείο
34
content/articles/01/05_realworld.md
Κανονικό αρχείο
|
@ -0,0 +1,34 @@
|
|||
+++
|
||||
title = 'Ορισμένοι το παίρνουν σοβαρά - CISCO Systems'
|
||||
date = '1997-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Παναγιώτης Βρυώνης'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 5
|
||||
+++
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Πολλές μεγάλες επιχειρήσεις και οργανισμοί ανά τον κόσμο χρησιμοποιούν το Linux. Αυτό τον μήνα παρουσιάζουμε την CISCO Systems.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Η CISCO Systems είναι μία εταιρεία κολλοσός στον χώρο της δικτύωσης για το Internet. Πουλάει τα προϊόντα της (High-end Routers, WAN switches, LAN switches, Hubs
|
||||
κ.λ.) σε 90 χώρες μέσω ενός δικτύου απ\'ευθείας πωλήσεων, αντιπροσώπων, μεταπωλητών και systems integrators. Εκτός από τα κεντρικά γραφεία της στο San Joze της
|
||||
Καλιφόρνιας, έχει 200 ακόμη γραφεία πωλήσεων και υποστήριξης σε 54 χώρες. Ο ημερήσιος τζίρος της είναι πάνω από 6 εκατομμύρια δολάρια και το οικονομικό έτος
|
||||
1997 ανήλθε συνολικά στα 6,44 δισ. δολάρια!!! (βλ. <http://www.cisco.com>)
|
||||
|
||||
Πριν από δύο χρόνια είχαν ένα τεράστιο πρόβλημα με την διαχείρηση των εκτυπωτών τους (1600 εκτυπωτές που χρησιμοποιούνται από 10.000 ανθρώπους σε όλο τον
|
||||
κόσμο!). Ήταν αδύνατο να ξέρουν κάθε στιγμή την κατάσταση ενός εκτυπωτή στο δύκτιο, αφού εκατοντάδες χρήστες σε δεκάδες συστήματα μπορούσαν να στέλουν
|
||||
εκτυπώσεις σε αυτόν.
|
||||
|
||||
Ο υπεύθυνος διαχειριστής συστήματος για τους εκτυπωτές, σχεδίασε ένα σύστημα στο οποίο όλες οι εκτυπώσεις για ένα συγκεκριμένο εκτυπωτή θα περνούσαν από ένα
|
||||
μηχάνημα που θα λειτουργούσε ως spooler. Οι spoolers αυτοί θα έπρεπε όμως να μπορούν να επικοινωνούν με κάθε λογής \"πελάτες\" (Windows, NT, Unix, Novell κ.λ.).
|
||||
Έπρεπε να είναι αρκετά φθηνοί ώστε να μπορούν να αγοραστούν εκατοντάδες από αυτούς. Τέλος, έπρεπε να μπορεί κανείς να βασιστεί σε αυτούς, από τεχνικής απόψεως.
|
||||
|
||||
Σήμερα, όλοι αυτοί οι 10.000 άνθρωποι ανά τον κόσμο μπορούν να εκτυπώνουν σε οποιονδήποτε από τους 1600 εκτυπωτές. Και όλες αυτές οι εκτυπώσεις περνάνε μέσα από
|
||||
μηχανήματα που τρέχουν Linux.
|
||||
|
||||
Η ιστορία αυτή αναφέρεται στο *Linux Journal (Dec 1997/Issue 44, σελ.35)* .
|
||||
|
||||
Ακόμη, στο <http://www.m-tech.ab.ca/linux-biz/cisco.html> αναφέρεται ότι η CISCO χρησιμοποιεί Linux μηχανήματα σαν Network file servers, για συγγραφή κειμένων
|
||||
(με ApplixWare), για σύνδεση με το Internet (Netscape Navigator, e-mail) καθώς και για software development\...
|
47
content/articles/01/06_redhatinst.md
Κανονικό αρχείο
47
content/articles/01/06_redhatinst.md
Κανονικό αρχείο
|
@ -0,0 +1,47 @@
|
|||
+++
|
||||
title = 'Πώς να εγκαταστήσετε το Redhat Linux από το Internet'
|
||||
date = '1998-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Γεωργάτος Φώτης gef@ceid.upatras.gr(mailto:gef@ceid.upatras.gr?subject=LINUX-MAGAZ) Κεραμίδας Γιώργος'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 6
|
||||
+++
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Από τους μεγαλύτερους πονοκέφαλους στο Linux είναι η εγκατάστασή του, γιατί συνήθως είναι χρονοβόρα και εάν \"σκαλώσει\" σε κάποιο πρόβλημα, θέλει κάποια
|
||||
εμπειρία για να καταλάβει κανείς τι είναι καλύτερο να κάνει και πώς. Η κατάσταση αυτή αλλάζει σιγά-σιγά, καθώς η εγκατάστασή του γίνεται όλο και πιο εύκολη.*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Τελευταία, δοκιμάσαμε μία διανομή του Linux, που φάνηκε πολύ εύκολη στην εγκατάσταση ακόμη και για αρχάριους: το Redhat 5.0. Επιπρόσθετα, εάν κανείς είναι
|
||||
συνδεδεμένος με καλή ταχύτητα στο Internet (\>100Kbps, όχι modem!), το μόνο που απαιτεί είναι να φτιάξει κανείς δυο δισκέτες, και να κάνει εκκίνηση με αυτές.
|
||||
|
||||
Η εγκατάσταση έγινε με χαρακτηριστική ευκολία, καθώς οι πιο πολλές ρυθμίσεις έγιναν αυτόματα. Οι σημαντικότερες πληροφορίες που έπρεπε να παρέχουμε εμείς ήταν η
|
||||
διεύθυνση IP, το domainname, ο εξυπηρέτης DNS, ο ftp server που είχε το Linux σε μορφή εγκατάστασης (πχ ftp.linux.gr), και η διαδρομή μέσα σε αυτον
|
||||
(/pub/redhat/redhat-5.0/i386/). Επίσης ενημερώσαμε στο πρόγραμμα εγκατάστασης το λογισμικό (πακέτα) που θέλαμε.
|
||||
|
||||
Από την στιγμή που πατήσαμε το τελευταίο ENTER, για 2 ώρες η εγκατάσταση προχώρησε ομαλότατα, ξεπερνώντας τις δυσκολίες ενός πολύ ασταθούς δικτυακού
|
||||
περιβάλλοντος, όπως είναι ένα υπολογιστικό κέντρο σχολής Η/Υ, που την συγκεκριμένη στιγμή ήταν και εξαιρετικά φορτωμένο. Υποθέτουμε ότι με μία καλή σύνδεση και
|
||||
επιλέγοντας ώρα που το δίκτυο δεν είναι φορτωμένο, μπορεί να γίνει σε 20\'.
|
||||
|
||||
Αφού τελείωσε η εγκατάσταση, μπήκαμε στο νέο σύστημα και διαπιστώσαμε ότι η RedHat έχει κάνει πολλές επιλογές και αυτοματισμούς για λογαριασμό ενός νέου χρήστη,
|
||||
που αυξάνουν σημαντικά την ευχρηστία του Linux. Χαρακτηριστικό είναι το περιβάλλον του fvwm-95, που δίνει την αίσθηση που έχει κανείς σε άλλα δημοφιλή γραφικά
|
||||
περιβάλλοντα. Μεγάλη ευκολία είναι ο Redhat Package Manager (RPM), που δίνει μεγάλη ευκολία στην (απ)εγκατάσταση εφαρμογών. Δεν χρειάστηκε kernel compile, καθώς
|
||||
όλες οι ρυθμίσεις έγιναν αυτόματα.
|
||||
|
||||
Εμείς δοκιμάσαμε και στήσαμε και το KDE-beta2, το οποίο αν και beta δείχνει αρκετά όμορφο και σχετικά σταθερό. Σας συνιστούμε τουλάχιστον να το δείτε:
|
||||
<http://www.kde.org>
|
||||
|
||||
Το Redhat 5.0, το βρήκαμε και στα εξής μέρη στην Ελλάδα: ( Επιλέξτε αυτό που είναι πιο γρήγορο σε εσάς )
|
||||
|
||||
- <ftp://ftp.linux.gr/pub/redhat/redhat-5.0/i386/>
|
||||
- [ftp://ftp.csi.forth.gr/sunsite/linux/sunsite\_archive/
|
||||
distributions/redhat/redhat-5.0/i386/](ftp://ftp.csi.forth.gr/sunsite/linux/sunsite_archive/distributions/redhat/redhat-5.0/i386/)
|
||||
- <ftp://ftp.ntua.gr/pub/linux/redhat/redhat-5.0/i386/>
|
||||
|
||||
Στον υποκατάλογο images θα βρείτε τα boot.img, supp.img που είναι οι 2 δισκέτες για την εκκίνηση, που θα φτιάξετε χρησιμοποιώντας το ./dosutils/rawrite.exe.
|
||||
Στον ίδιο κατάλογο υπάρχει το fips, ένα εργαλείο για να \"κόψετε\" τον σκληρό σας δίσκο σε partitions, διατηρώντας τα δεδομένα που ήδη έχει.
|
||||
|
||||
Να έχετε υπ\' όψιν σας ότι η εγκατάσταση του Redhat 5.0 μπορεί να γίνει και από τα ανάλογα bootable CD της Redhat. Επίσης, ενημερωθήκαμε ότι τέλος Ιανουαρίου θα
|
||||
κυκλοφορήσει το [Linux Developer\'s Resource](http://www.infomagic.com/infomagic/2linux.html) της Infomagic (6CD, περιλαμβάνει το Redhat).
|
84
content/articles/01/07_kerncomp.md
Κανονικό αρχείο
84
content/articles/01/07_kerncomp.md
Κανονικό αρχείο
|
@ -0,0 +1,84 @@
|
|||
+++
|
||||
title = 'Επιτάχυνση της κατασκευής πυρήνα μέσω NFS'
|
||||
date = '1998-01-01T00:00:00Z'
|
||||
description = ''
|
||||
author = 'Γεωργάτος Φώτης gef@ceid.upatras.gr(mailto:gef@ceid.upatras.gr?subject=LINUX-MAGAZ)'
|
||||
issue = ['Magaz 01']
|
||||
issue_weight = 7
|
||||
+++
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
*Από τις πιο εντυπωσιακές διαφορές του Linux από τα άλλα λειτουργικά συστήματα, είναι η μεταγλώττιση του πυρήνα (kernel).*
|
||||
|
||||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
Όταν πρωτοστήνει κανείς ένα Linux σύστημα, συνήθως παίρνει ένα πυρήνα που να δουλεύει, αλλά σπάνια αυτός αντιστοιχεί στις πραγματικές ανάγκες ενός χρήστη, άρα η
|
||||
κατασκευή ενός νέου είναι επιβεβλημένη. Η διαδικασία αυτή είναι μάλλον διασκεδαστική - γιατί αφήνει την αίσθηση του πλήρη ελέγχου στον Η/Υ - αλλά και λίγο
|
||||
χρονοβόρα, συνήθως είναι υπόθεση 15 λεπτών.
|
||||
|
||||
Θα σας δείξω, τώρα, πώς χάρις στην μεγάλη ευελιξία του Unix (άρα και του Linux), κατάφερα να μειώσω στο 1/20, τον χρόνο μεταγλώττισης, χρησιμοποιώντας την
|
||||
ταχύτητα και μνήμη ενός γρήγορου συστήματος, που δούλευε για λογαριασμό ενός αργού.
|
||||
|
||||
Είχα ένα τοπικό δίκτυο ethernet με δύο Linux Η/Υ, έναν 386SX-20, 6MB RAM, 340MB HDD (Πόρος), και έναν 486DX-100, 20MB RAM, 1.2GB HDD (Κατελειός).
|
||||
|
||||
|----*---------------*------|
|
||||
| |
|
||||
-------- -----------
|
||||
|ΠΟΡΟΣ | |ΚΑΤΕΛΕΙΟΣ|
|
||||
|386-20| | 486-100 |
|
||||
-------- -----------
|
||||
|
||||
Ο 486-100 ήθελε γύρω στα 30 λεπτά, αλλά ο 386-20 ήταν απαράδεκτα αργός στην κατασκευή πυρήνα γιατί ήθελε 17 ώρες (1 προς 34).
|
||||
|
||||
Την πρώτη φορά που έκανα το compile στον 386, νόμιζα ότι είχε κολήσει γιατί δούλευε όλη την ώρα στον δίσκο (swapfile). Αιτία ήταν ότι το compile, και ειδικά του
|
||||
πυρήνα, απαιτεί μεγάλες ποσότητες μνήμης τις οποίες ο 386 με 6MB τις παρείχε σαν ιδεατή μνήμη (virtual memory). Δεν ήμουν σίγουρος για το τι συμβαίνει και έτσι
|
||||
διέκοψα την μεταγλώττιση (απλά με control-c). Λίγες μέρες αργότερα τον έβαλα να φτιάξει πυρήνα και μέτρησα περίπου 17 ώρες.
|
||||
|
||||
Κάποια στιγμή χρειάστηκε ο Πόρος νέο πυρήνα οπωσδήποτε, αλλά δεν ήμουν πρόθυμος να τον περιμένω 17 ώρες\... Το να φτιάξω πυρήνα στον 486 μέσα σε ένα μισάωρο,
|
||||
και να τον αντιγράψω δεν έστεκε σαν λύση, γιατί το compile εκτός από το 1 αρχείο που φτιάχνει και είναι ο πυρήνας (zImage), κάνει πολυάριθμα άλλα πράγματα όπως
|
||||
τα modules και κάποιες ρυθμίσεις στο /boot και στα include αρχεία, νομίζω. Κοντολογίς, θα έφτιαχνα \"μισό\" πυρήνα και θα χάλαγα ενδεχομένως τον 486 στις
|
||||
ρυθμίσεις του.
|
||||
|
||||
Ιδού λοιπόν η λύση: Κάνω **export** το / (root filesystem) του Πόρου,
|
||||
|
||||
echo "/ kateleios(rw,no_root_squash)" >>/etc/exports
|
||||
kill -HUP `pidof rpc.nfsd rpc.mountd`
|
||||
|
||||
και το προσαρτώ στον 486 σε έναν υποκατάλογο του:
|
||||
|
||||
mount poros/ /mnt.
|
||||
|
||||
Αυτό το σύστημα λέγεται **NFS** (Network FileSystem), και είναι η τυπική μέθοδος για την διανομή αρχείων μεταξύ Unix συστημάτων.
|
||||
|
||||
Στην συνέχεια εκτελώ την εντολή **chroot** στον Κατελειό, ως root:
|
||||
|
||||
chroot /mnt sh
|
||||
|
||||
Αυτή η εντολή λέει στον πυρήνα ότι η διεργασία sh (που τρέχει στον Κατελειό) και τα παιδιά της, αλλάζει το root directory και όταν θα αναφέρεται στο
|
||||
/usr/local/src ας πούμε, θα εννοεί το /mnt/usr/local/src. Τι σύμπτωση, εκεί είναι ο πηγαίος κώδικας του πυρήνα του Πόρου\... Ότι κάνουμε από εδώ και στο εξής,
|
||||
\"τρέχει\" σαν διεργασία στον Κατελειό αλλά φορτώνει και δουλεύει από τον δίσκο του Πόρου.
|
||||
|
||||
Αρχίζουμε λοιπόν, μέσα από το \"περίεργο\" shell:
|
||||
|
||||
cd /usr/src/linux
|
||||
make config
|
||||
make dep
|
||||
make clean
|
||||
make zImage
|
||||
|
||||
Σε ένα 40λεπτο ο πυρήνας είναι έτοιμος, χρησιμοποιώντας την άπλετη μνήμη και υπολογιστική ισχύ του 486. Δεν τελειώσαμε όμως:
|
||||
|
||||
make modules
|
||||
make modules_install
|
||||
|
||||
Ο νέος πυρήνας υπάρχει στο /usr/src/linux/arch/i386, αλλά δεν είναι ακόμα ενήμερο το LILO στον Πόρο. Όχι!!! μην γράψετε lilo στο shell αυτό, γιατί μόνο το MBR
|
||||
του 486 είναι ορατό στο lilo. Απλά, βγήκα από το shell και έκανα telnet poros, μπήκα σαν root, αντέγραψα τον πυρήνα στο /zImage (εγώ τον τοποθετώ εκεί) και
|
||||
εκτέλεσα lilo. Το σύστημα ενημερώθηκε για την αλλαγή του πυρήνα και στο επόμενο reboot δούλεψε μια χαρά.
|
||||
|
||||
Υποδείξεις:
|
||||
|
||||
- Το όταν παίξετε με τη chroot, δοκιμάστε με το directory /bin, ώστε να μπορείτε να κάνετε ls.
|
||||
- Το read-write export του /, πιθανόν να είναι πρόβλημα ασφάλειας για το σύστημά σας. Εάν το τοπικό δίκτυό σας το παραμονεύει κανένας cracker, θα έπρεπε να
|
||||
προσέχετε.
|
||||
- Τα νέα συστήματα (πχ PPro-200,32MB) κάνουν την κατασκευή πυρήνα μέσα σε 5 λεπτά, σχεδόν interactive\...
|
||||
- Ο τελευταίος πυρήνας υπάρχει στο <http://www.kernel.org>, και είναι ο linux-2.0.33 (31-12-97).
|
Φόρτωση…
Προσθήκη πίνακα
Προσθήκη υπερσυνδέσμου
Παράθεση σε νέο ζήτημα