Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
- Ξεκινώντας
- Λήψη Buildroot
- Δημιουργία απαιτήσεων συστήματος
- Ορολογία cross-compiler: build, host, target, sysroot
- Επιλέγοντας τον σωστό στόχο
- Δημιουργία ενός ελάχιστου ενσωματωμένου συστήματος και εκκίνηση του
- Περιεχόμενα της εικόνας του συστήματος αρχείων που προκύπτει
- Παράλληλες κατασκευές
- Πλήρεις και μερικές ανακατασκευές
- Στόχοι σχεδίασης του Buildroot
- Επιλογές που πρέπει να γίνουν
- C βιβλιοθήκη: glibc ή uClibc ή musl;
- Σύστημα Init: busybox vs sysVinit vs systemd
- Διαχείριση κόμβων συσκευής στο /dev
- Επιλογή άλλων πακέτων
- Κατανόηση των οδηγιών κατασκευής
- Σύνταξη αρχείων Kconfig (Confog.in).
- Χαρακτηριστικά του GNU Make που χρησιμοποιούνται από το Buidroot Makefiles
- Οδηγός στυλ για αρχεία Config.in και *.mk
- Πώς να προσθέσετε ένα απλό πακέτο που βασίζεται σε Autotools
- Η διαφορά μεταξύ των καταλόγων σταδιοποίησης και στόχου
- Η ανάγκη για πακέτα φιλοξενίας
- Πώς να εκφράσετε εξαρτήσεις και προαιρετικές δυνατότητες
- Υποστήριξη για γλώσσες εκτός της C και δημιουργία συστημάτων εκτός από τα Autotools
- Εντοπισμός σφαλμάτων MakeFiles
- Ανακατασκευή ενός ενιαίου πακέτου
- Ανάλυση των αποτελεσμάτων κατασκευής
- Τι χρειάστηκε τόσος χρόνος κατασκευής;
- Τι πήρε τόσο πολύ χώρο στο δίσκο;
- Γιατί δημιουργήθηκε αυτό το πακέτο;
- Οργάνωση εξωτερικών πακέτων δέντρων
- Ροή εργασιών για προγραμματιστές εφαρμογών
- Πώς να χρησιμοποιήσετε έναν τοπικό κατάλογο προέλευσης
- Υπερισχύουσες οδηγίες κατασκευής
- Εντοπισμός σφαλμάτων της εφαρμογής σας
- Επιτάχυνση ανακατασκευών
- Προβολή αρχείων καταγραφής κατασκευής
- Αντιμετώπιση κοινών θεμάτων διασταυρούμενης συλλογής
- Πώς να γράψετε το δικό σας λογισμικό ώστε να είναι φιλικό στους cross-compilers
- Ροή εργασίας για προγραμματιστές πυρήνα
- Πώς εκκινείται ο πυρήνας σε ένα ενσωματωμένο σύστημα
- Αλλαγή επιλογών διαμόρφωσης και προσθήκη ενημερώσεων κώδικα
- Μηχανισμοί φόρτωσης μονάδων
- Κατασκευή τελικού προϊόντος
- Τρέχοντας δαίμονες κατά την εκκίνηση
- Παροχή προσαρμοσμένων αρχείων διαμόρφωσης
- Διαθέσιμοι μηχανισμοί ενημέρωσης υλικολογισμικού
- Αναβάθμιση σε νέα έκδοση Buildroot
- Συμμόρφωση με άδειες ανοιχτού κώδικα
Requirements
- Ο συμμετέχων πρέπει να έχει δημιουργήσει έναν πυρήνα τουλάχιστον μία φορά για ένα παραδοσιακό επιτραπέζιο (μη ενσωματωμένο) σύστημα Linux.
- Γνωρίζει από ποια στοιχεία αποτελείται ο χώρος χρηστών Linux σε ένα επιτραπέζιο σύστημα.
- Γνωρίζει πώς να δημιουργεί και να χρησιμοποιεί ενημερώσεις κώδικα.
- Πρέπει να μπορεί να εξηγήσει τι είναι το GNU Make, τα Autotools, ποια άλλα συστήματα κατασκευής υπάρχουν.
- Στην ιδανική περίπτωση, διατηρεί τουλάχιστον ένα πακέτο Linux, είτε ως upstream συγγραφέας, είτε σε οποιαδήποτε παραδοσιακή διανομή Linux επιτραπέζιου υπολογιστή.
- Δεν απαιτείται προηγούμενη εμπειρία με την ενσωματωμένη ανάπτυξη και δεν υποκαθιστά τη γνώση σχετικά με τους παραδοσιακούς Linux επιτραπέζιους υπολογιστές που προσδιορίζονται παραπάνω.
7 Hours