NuttX

Screenshot Λογισμικό:
NuttX
Στοιχεία Λογισμικού:
Εκδοχή: 7.9 επικαιροποιημένο
Ανεβάστε ημερομηνία: 10 May 15
Προγραμματιστής: Gregory Nutt
Άδεια: Δωρεάν
Δημοτικότητα: 53

Rating: 4.0/5 (Total Votes: 1)

NuttX είναι ένα open source, ντετερμινιστική και δωρεάν σε πραγματικό χρόνο, ενσωματωμένο λειτουργικό σύστημα (RTOS), σχεδιασμένο από τον συμψηφισμό να μπορούν να χρησιμοποιηθούν σε βαθιά ριζωμένες και περιορισμένους πόρους περιβάλλοντα. Έχει ένα μικρό αποτύπωμα που μπορεί να χρησιμοποιηθεί σε περιβάλλοντα μικρο-ελεγκτή, και & rsquo? S πλήρως επεκτάσιμο από τα μικροσκοπικά (8-bit) με μέτρια ενσωματωμένα συστήματα (32-bit).
Στοχεύει επίσης να είναι πλήρως συμβατό με τα πρότυπα, να είναι πλήρως σε πραγματικό χρόνο, και να είναι εντελώς ανοικτή. NuttX έχει ένα πλούσιο σύνολο δυνατοτήτων OS, ένα αρθρωτό σχεδιασμό, είναι εξαιρετικά επεκτάσιμη και παραμετροποιήσιμη, καθώς και συμβατές με τα πρότυπα. Θα διανέμεται με μη περιοριστικό άδεια BSD. Είναι συχνά αποκαλείται από τους προγραμματιστές της ως "Tiny Linux." Χαρακτηριστικά με μια glanceKey χαρακτηριστικά περιλαμβάνουν πυρήνα τη διαχείριση των εργασιών, BSD διεπαφή υποδοχή, κατανεμητές μνήμης (κοινόχρηστη μνήμη, τυπική κατανομή της μνήμης σωρού, προστατευμένη κατασκευή με MPU, επίπεδη ενσωματωμένο κατασκευής, ανά διαδικασία σωρούς, κόκκος διαθέτη και δυναμικά μεγέθους), διαμορφώσεις μνήμης, porting οδηγός, πλήρως εκπτωτική τιμή, tickless λειτουργία, on-demand paging και το σύστημα καταγραφής.
Επιπλέον, το πρόγραμμα έρχεται με προεκτάσεις για τη διαχείριση προτίμησης, ανά νήμα, ενσωματωμένη στις μετρήσεις φορτίου της CPU, ολοκληρωμένη τεκμηρίωση, προαιρετικές εργασίες που να περιέχει τη διεύθυνση περιβάλλοντα, ANSI-όπως και POSIX-όπως τους ελέγχους έργο, ρολόγια, Pthreads, περιβάλλον μεταβλητές, σήματα, που ονομάζεται ουρές μηνυμάτων, χρονοδιακόπτες, σύστημα αρχείων και την καταμέτρηση σημαφόρους.
Μεταξύ άλλων χαρακτηριστικών, μπορούμε να αναφέρουμε round-robin προγραμματισμό, FIFO, υποστήριξη για την κληρονομιά προτεραιότητας, στήριξη για την αρχιτεκτονική SoC, υποστήριξη για αρχιτεκτονικές διοικητικού συμβουλίου, στήριξη για νέες αρχιτεκτονικές επεξεργαστών, χρονόμετρα φύλακα, VxWorks-όπως τη διαχείριση των εργασιών, I / O redirection και μεταδίδονται & ldquo? τον έλεγχο τερματικών & rdquo?. Υποστηριζόμενα platformsNuttX υποστηρίζει μια μεγάλη ποικιλία από πλατφόρμες υλικού, μεταξύ των οποίων μπορούμε να αναφέρουμε τα πολυάριθμα επεξεργαστές ARM, συμπεριλαμβανομένης της ARM Cortex-M3, ARM926EJS, ARM7TDMI, ARM Cortex-M4, ARM Cortex-M0, ARM920T και ARM Cortex-A5, καθώς και την Atmel 8-bit AVR, Freescale M68HCS12, AVR32 Atmel AVR πλατφόρμες.
Επιπλέον, υποστηρίζει επίσης διάφορες πλατφόρμες της Intel, όπως μικροτσίπ PIC32MX (MIPS), 80c52 και 80 & φορές? 86, Zilog πλατφόρμες, συμπεριλαμβανομένων Zilog Z80, Zilog Z16F, Zilog Z8Encore! και Zilog eZ80 Acclaim !, και οι Renesas / Hitachi SuperH και Renesas M16C / 26 πλατφόρμες

Τι είναι καινούργιο σε αυτή την έκδοση:.

  • Χαρακτηριστικά: Πρόσθετες νέα χαρακτηριστικά και εκτεταμένη λειτουργικότητα:
  • πυρήνα OS:
  • Watchdog Timer Κατανομή: (1) Εάν εξαντληθεί προ-κατανομή των χρόνων φύλακα, η λογική θα διαθέσει συμπληρωματικούς χρονόμετρα από το σωρό. Ένα αποθεματικό διατεθεί εκ των προτέρων χρονόμετρα φύλακα διατηρείται έτσι ότι θα υπάρχει πάντα χρονόμετρα διαθέσιμα για διακοπή χειριστές. (2) Προστέθηκε υποστήριξη για στατικά κατανεμημένο φύλακα χρονόμετρο
  • Διεύθυνση Περιβάλλοντος Υποστήριξη: (2) Νέα OS APIs ενσωματωθεί σε όλα τα πλαίσια συγκεκριμένη πλατφόρμα λογική της μεταγωγής (up_block_task (), up_unblock_task (), _exit (), και άλλοι)
  • .
  • Kernel χτίσει την υποστήριξη: (1) Η MPU βάση & quot? Πυρήνα κατασκευής & quot? μετονομάστηκε σε ένα προστατευμένο κατασκευής (CONFIG_BUILD_PROTECTED)? προστέθηκε υποστήριξη για το νέο MMU-based & quot? πυρήνα κατασκευής & quot? (CONFIG_BUILD_KERNEL), (2) Η βιβλιοθήκη κλήση σύστημα μπορεί τώρα να οικοδομηθεί με CONFIG_NUTTX_KERNEL. Νέα επιλογή *:. CONFIG_LIB_SYSCALL
  • Εκκίνηση του Συστήματος: Προσθέστε τις επιλογές διαμόρφωσης για να ξεκινήσει το σύστημα από ένα πρόγραμμα σε ένα σύστημα αρχείων (έναντι μιας διεύθυνσης στη μνήμη)
  • .
  • Εκκίνηση πέρασμα παραμέτρων: χρησιμοποιείται για να υπάρχουν δύο τρόποι για να περάσετε παραμέτρους σε νέα καθήκοντα, ανάλογα με τη διαμόρφωση: είτε (1) argv [] καθώς δημιουργήθηκε ως μια σειρά με κάθε αλληλουχία strdup'ed. Ή (2) argv [] array και έγχορδα δημιουργήθηκαν στη στοίβα πριν από το νέο έργο ξεκίνησε. Τώρα, υπάρχει μόνο ένας τρόπος, τρόπος (2). Way (1) μπορεί να είναι ελαφρώς πιο συμπαγής, αλλά αυτό δεν αξίζει να φέρει την πολυπλοκότητα των δύο διαφορετικούς τρόπους να κάνεις το ίδιο πράγμα.
  • Διοικητικό Εκκίνηση: Προσθήκη ικανότητα να εκτελέσει την αρχική εκκίνηση του σκάφους σε ένα ξεχωριστό νήμα εργασίας. Αυτό είναι απαραίτητο, διότι υπάρχουν πολλές περιπτώσεις όπου η λογική προετοιμασίας δεν μπορεί να εκτελέσει για την εκκίνηση / IDLE νήμα. Αυτό οφείλεται στο γεγονός ότι το κλείδωμα ή αναμονής δεν επιτρέπεται στην αδρανή νήμα.
  • Διαχείριση Μνήμης:
  • κόκκων Κατανομέα: (1) Προσθέστε μια νέα λειτουργία για να κάνετε κράτηση un-εκχωρηθούν περιοχές στο σωρό κόκκων. (2) Προσθήκη διασυνδέσεις με την υποστήριξη του ΟΗΕ, να γίνει μια κατανεμητή κόκκο.
  • Σελίδα Κατανομέα: Προσθέστε ένα απλό κατανεμητή φυσική σελίδα με βάση την υπάρχουσα NuttX κόκκο κατανεμητή. Δεν είμαι σίγουρος αν ο κατανεμητής του κόκκου είναι επαρκώς ντετερμινιστικό για μακροχρόνια χρήση φάσματος, αλλά παίρνει πάρετε μια κατανεμητή σελίδα σε ισχύ για τον έλεγχο πολύ γρήγορα.
  • Κατάργηση CONFIG_MM_MULTIHEAP: Μη multiheap λειτουργία δεν υποστηρίζεται πλέον
  • .
  • sbrk ():. Sbrk () υποστηρίζεται τώρα στο χτίσιμο του πυρήνα για να επιτραπεί δυναμικά μεγέθους, ανά διαδικασία σωρούς
  • Ο Per-Διαδικασία Σωροί: Διάστημα στην αρχή του χώρου δεδομένων διεργασίας τώρα προορίζεται για τις δομές διαχείρισης σωρού χρήστη. Στη λειτουργία χτίσιμο του πυρήνα, οι δομές αυτές σωρό από κοινού μεταξύ του πυρήνα και τη χρήση κώδικα, προκειμένου να κατανείμει τα δεδομένα συγκεκριμένου χρήστη.
  • Χρήστης σωρού Διαχείρισης: Όταν ένας προνομιούχος εξόδους νήμα, θα πρέπει να χρησιμοποιήσετε το πρόγραμμα εκχώρησης του πυρήνα για να ελευθερώσετε μνήμη? όταν ένα μη προνομιούχους εξόδους νήμα, δεν έχουμε να κάνουμε τίποτα ... μνήμη σωρού θα καθαριστεί, όταν το περιβάλλον διεύθυνση κατεδαφιστεί.
  • Inter-διαδικασία υποστήριξης Κοινόχρηστη μνήμη: (1) Προσθήκη εφαρμογή και τεκμηρίωση για shmget (), shmctl (), shmat (), και shmdt (). (2) Προσθήκη σύστημα σύστημα καλεί να στηρίξει την πύλη κλήση χρήστη στις κοινές διεπαφές μνήμης. (3) Προσθήκη ορισμοί διεπαφή συγκεκριμένη πλατφόρμα για την υποστήριξη της λειτουργία κοινόχρηστης μνήμης.
  • Εικονική Σελίδα Κατανομέα: Προσθήκη υποστήριξης για ανά διαδικασία εικονική σελίδα κατανεμητή. Αυτό είναι ένα νέο μέλος της task_group_s δομής. Ο κατανεμητής πρέπει να προετοιμαστούν όταν μια νέα διαδικασία χρήστης ξεκινά και αρχικοποίηση όταν η ομάδα διαδικασία τελικά καταστρέφεται. Χρησιμοποιείται από shmat () και shmdt () για να επιλέξετε την εικονική διεύθυνση πάνω στην οποία να χαρτογραφήσει την κοινή φυσική μνήμη.
  • Συστήματα αρχείων / Αποκλεισμός Οδηγοί / ΜΑΔ:
  • SMART FS: SMART FS και SMART FS PROCFS ενημερώσεις από Ken Pettit
  • .
  • MTD:. Εμφανίζεται το στρώμα MTD-ανάγνωσης εγγραφής / ρυθμιστικό είναι πλέον λειτουργικό
  • Binary Μορφές:
  • Ο Per-διεργασία σωρού:. Προσθέστε τη λογική για να προετοιμάσει το ανά διαδικασία σωρό χρήστη όταν κάθε διαδικασία λειτουργίας χρήστη έχει ξεκινήσει
  • Γραφικά:
  • NxTerm: Αλλάξτε όλες τις εμφανίσεις της NxConsole να NxTerm
  • .
  • Δικτύωση:
  • ΦΥΣ Διακόπτει: (1) την τυποποίηση ενός interface επαφών ΦΥΣ διακοπής. (2) Προσθήκη υποστήριξης για IOCTL που μπορεί να χρησιμοποιηθεί για να κοινοποιούν την αίτηση όταν υπάρχει αλλαγή στην κατάσταση του δικτύου σηματοδοτείται από μια διακοπή ΦΥΣ.
  • Βελτιωμένη Αποστολή Λογική: Στο παρελθόν, το πρώτο πακέτο στείλει σε ένα νέο peer δίκτυο θα αποτύχει? δεν θα υπάρχει εγγραφή στον πίνακα ARP για την από ομοτίμους και έτσι μια αίτηση ARP θα μπορούσε να αντικαταστήσει αυτό το πρώτο πακέτο. Τώρα, ως επιλογή, αν CONFIG_NET_ARP_SEND = y, όλα στείλετε λογική θα (1) ελέγξτε εάν η διεύθυνση ομοτίμους MAC είναι στον πίνακα ARP και, αν όχι, (2) να απευθύνουν τις αιτήσεις ARP περιοδικά για να πάρει την χαρτογράφηση και (3), περιμένετε για την ARP απάντηση. Στη συνέχεια, (4), όταν η απάντηση ARP έχει δοθεί, τότε η πραγματική λογική αποστολή θα ξεκινήσει. Έτσι, μπορεί να υπάρξει καθυστέρηση με το πρώτο πακέτο στέλνεται σε ένα νέο ομοτίμους, αλλά το πακέτο δεν θα πρέπει να χαθεί
  • Διοργανωτής Προσομοίωση:
  • SPI Flash οδηγό:. Με προσομοίωση SPI FLASH πρόγραμμα οδήγησης για την κάρτα SIM του στόχου από τον Ken Pettit
  • Η Intel x86:
  • Προεπιλογή Διοργανωτής: Η προεπιλογή υποδοχής είναι τώρα x86_64 και η επιλογή -m32 θα επιλέγεται αυτόματα για την προσομοίωση χτίζει
  • .
  • Intel 8051 Οικογένεια:
  • 8051 καταργήθηκε: Αφαιρέθηκε κάθε υποστήριξη για το 8051 οικογένεια αρχιτεκτονική από το δέντρο πηγή NuttX. Το παλαιωμένο κωδικό μαζί με το επίθεμα απομάκρυνση μπορεί τώρα να βρεθεί στο misc / ξεπερασμένων /. Αυτός ο κωδικός αφαιρέθηκε επειδή (1), αν και κάποια λειτουργικότητα έχει αποδειχθεί, δεν είμαι ενήμερος για τυχόν πραγματικά επιτυχημένη λιμάνια της NuttX σε οποιοδήποτε 8051, και (2) το 8051, με stack του υλικού της, αναγκάζει τους περιορισμούς και τις επιπλοκές στις άλλες αρχιτεκτονικές και να κάνουν την ανάπτυξη και την εξέλιξη του NuttX πιο περίπλοκη.
  • ZILOG ZNeo Πίνακες:
  • configs / 16Ζ: Υποστήριξη για αυτό το συμβούλιο έχει αφαιρεθεί από το δέντρο πηγή NuttX (αλλά ακόμα μπορούν να βρεθούν στο misc / ξεπερασμένων κατάλογο). Αυτή η θύρα δεν είναι έτοιμη για χρήση, αλλά μπορεί να επιστρέψει στο NuttX δέντρο σε κάποιο σημείο στο μέλλον.
  • Atmel SAM3 / 4 Πίνακες:
  • SAM4E-EK:. Προσθέστε (1) μια πλήρως λειτουργική ILI9341-based οδηγό LCD και (2) μια πλήρως λειτουργική διαμόρφωση NxWM
  • ARMv7-Α:
  • Διεύθυνση Περιβάλλοντα: Προσθήκη υποστήριξης για περιβάλλοντα διεύθυνση εφαρμογής χρησιμοποιώντας το Cortex-A MMU. Εφαρμόζουν τυποποιημένες διεπαφές συγκεκριμένη πλατφόρμα της NuttX υποστήριξη διεύθυνσης περιβάλλοντος.
  • Λειτουργίες μνήμης cache: Εφαρμογή τυποποιημένη πλατφόρμα-συγκεκριμένες λειτουργίες της μνήμης cache. Αυτοί καλούνται από τον φορτωτή ELF για να ξεπλύνει D-cache και να ακυρώσει I-cache μετά από μια μονάδα ELF έχει φορτωθεί στη μνήμη. Με την αλλαγή αυτή, ενότητες ELF λειτουργήσει σωστά στο SAMA5 / Cortex-μια πλατφόρμα.
  • Kernel Σώμα: (1) Προσθήκη υλοποιήσεις της πύλης κλήση συστήματος. (2) Προσθήκη CRT0 αρχείο εκκίνησης που μπορεί να συνδεθεί με ξεχωριστά χτισμένα τα προγράμματα χρήστη. (3) Προσθήκη υποστήριξης για την παράδοση των σημάτων χρήση-mode στο χτίσιμο του πυρήνα. (4) Προσθήκη λογική για την προετοιμασία του ανά διαδικασία σωρό χρήστη όταν κάθε διαδικασία λειτουργίας χρήστη έχει ξεκινήσει. (5) ARMv7-Α χειρισμό εξαίρεση θα πρέπει να δουλέψουμε λίγο διαφορετικά, αν υποστηρίξουμε τις διαδικασίες λειτουργίας χρήστη. Αυτό οφείλεται στο γεγονός ότι τα R13 και R14 είναι σελιδοποιημένος διαφορετικά μεταξύ του χρήστη και τη λειτουργία SVC.
  • Κοινόχρηστο υποστηριζόμενων μνημών: (1) Προσθήκη λογική απαραίτητες για να χειριστεί remapping της κοινής μνήμης για εναλλαγές περιβάλλοντος. (2) Επέκταση εικονικού / μετατροπές φυσική διεύθυνση για να περιλάβει τις διευθύνσεις στην κοινόχρηστη μνήμη. (3) Προσθήκη υλοποίηση του συγκεκριμένη πλατφόρμα κοινόχρηστη μνήμη υποστήριξη.
  • Atmel SAMA5D Οδηγοί:
  • Δίκτυο ioctls:. Εφαρμογή όλων των ioctls δικτύου, συμπεριλαμβανομένου του νέου ioctl για ειδοποιήσεις συμβάντων ΦΥΣ εγκατάσταση
  • Διεύθυνση Μετατροπές:. Στον πυρήνα οικοδομήσει με τη διεύθυνση περιβάλλοντος, πρέπει η λογική να χαρτογραφήσει χρήστη εικονικές διευθύνσεις σε φυσικές διευθύνσεις, και αντίστροφα
  • Atmel SAMA5D Πίνακες:
  • SAMA5D3 Xplained, SAMA5D3-EK, και SAMA5D4-EK: Μετατροπή των υφιστάμενων διασυνδέσεων περιλαμβάνει συγκεκριμένες ΦΥΣ διακοπής για να χρησιμοποιήσουν τις νέες καθορισμένο πρότυπο διασύνδεσης
  • .
  • SAMA5D4-EK: Προσθέστε μια ρύθμιση για τον έλεγχο της διαμόρφωσης του πυρήνα κατασκευής. Υπάρχουν ρυθμίσεις για την εκκίνηση, είτε από μια κάρτα SD ή και στη μνήμη του συστήματος αρχείων ROMFS.
  • SAMA5D4-EK: Προσθήκη τεκμηρίωσης / υποστήριξης για Rev Ε σκάφους
  • .
  • STMicro STM32 Οδηγοί:
  • Ethernet: τροποποιηθούν για να υποστηρίξουν την αλλαγή στις αλλαγές υπογραφή ioctl δικτύου. Επίσης προσθέσετε υποστήριξη για νέους ioctl για ειδοποιήσεις συμβάντων ΦΥΣ εγκατάσταση.
  • STMicro STM32 Πίνακες:
  • STM32F4Discovery με STM32F4DIS-ΒΒ: Προσθέστε ένα δίκτυο ενεργοποιημένη διαμόρφωση NSH για το διοικητικό συμβούλιο STM32F4Discovery με τη βάση του σκάφους STM32F4DIS-BB εγκατασταθεί. Περιλαμβάνει υποστήριξη για την υποδοχή κάρτας microSD για τη βάση του σκάφους STM32F4DIS-ΒΒ.
  • TI Tiva Οδηγοί:
  • TI CC3200: Προσθήκη υποστήριξης για το CC3200 TI. Από Jim Ewing.
  • TI Tiva Πίνακες:
  • TI CC3200 Launchpad: Προσθήκη υποστήριξης για το TI CC3200 Launchpad. Από Jim Ewing.
  • C Library:
  • δημοσκόπηση ():. Re εφαρμόζονται δημοσκόπηση () καθυστέρηση χρησιμοποιώντας sem_timedwait ()
  • Διαμόρφωση / Build System:
  • Ο στόχος των εξαγωγικών: Στον πυρήνα ή προστατεύεται χτίζει, (1) μόνο οι βιβλιοθήκες χρήστης θα πρέπει να εξάγονται, (2) δεν αντιγράφετε εσωτερικά αρχεία κεφαλίδας ή να χτίσει τα σενάρια αν αυτό είναι ένας πυρήνας ή προστατευόμενη κατασκευή, και (3) τις ανάγκες να συσσωρεύσει επάνω το αρχείο εκκίνησης του χρήστη C (crt0), όχι το αμύγδαλο αντικείμενο το κεφάλι για τον πυρήνα και προστατεύονται χτίζει.
  • Πρόγραμμα CFLAGS: Προσθήκη λογική που θα μας επιτρέψει να οικοδομήσουμε βιβλιοθήκες χρηστών με διαφορετικά CFLAGS από κώδικα του πυρήνα. Αυτό είναι απαραίτητο, διότι χρειαζόμαστε τη -fno-κοινή επιλογή κατά τη δημιουργία κώδικα ELF για την πρόληψη των μετεγκαταστάσεων SHN_COMMON.
  • Εφαρμογές:
  • NSH: Επέκταση της προετοιμασίας λογική δικτύου NSH. Υπάρχει τώρα μια επιλογή που θα δημιουργήσει ένα δίκτυο νήμα οθόνη που θα παρακολουθεί την κατάσταση της σύνδεσης. Όταν η σύνδεση πηγαίνει κάτω, ο κωδικός θα προσπαθήσει να βάλει χαριτωμένα τον οδηγό Ethernet σε μια από τις κρατικό? Όταν η σύνδεση έρχεται πίσω, ο κωδικός θα προσπαθήσει να φέρει το δίκτυο back up.
  • ELF Παράδειγμα:. Η δοκιμή ELF / παράδειγμα έχει επεκταθεί, ώστε οι επιμέρους προγράμματα δοκιμών ELF μπορούν να συνδεθούν κατά τη βιβλιοθήκη syscall (εάν είναι διαθέσιμο) ή κατά τη βιβλιοθήκη της C να εξαλείψει ή να ελαχιστοποιήσει την ανάγκη για πίνακες σύμβολο
  • NxTerm: Αλλάξτε όλες τις εμφανίσεις της NxConsole να NxTerm
  • .
  • MTDRWB. Παράδειγμα: Προσθέστε ένα παράδειγμα προς εξέταση MTD R / W ρυθμιστικούς
  • OS Παράδειγμα Εξέτασης: Προσθέστε ένα ασήμαντο δοκιμή sem_timedwait ()
  • .
  • Εφαρμογή Διαμόρφωση / Build System:
  • Εισαγωγή προορισμού: (1) Προσθήκη λογική που θα επιτρέψει τη δημιουργία εφαρμογών από ένα πακέτο εξαγωγής NuttX (έναντι του nuttx / δέντρο πηγαίου κώδικα). (2) Προσθέστε το .config αρχείο για να εξαγάγετε το πακέτο. (3) Δημιουργία apps / εισαγωγής. Δημιουργία apps / εισαγωγή / Make.defs που κάνει τα πράγματα όπως ορίζουν CFLAGS? ELF κατασκευής απαιτεί -fno-κοινή σε CFLAGS. Αντιγράψτε κάποια λογική βάση από nuttx / εργαλεία / Config.mk να apps / εισαγωγή / Make.defs. (4) Προσθήκη εφαρμογών / εισαγωγή / scripts / GNU-elf.ld σενάριο GCC συνδετήρα για εισαγωγή ELF χτίζει.
  • Όλα τα Makefiles: (1) Προσθέστε μια εγκατάσταση στόχο σε όλες τις makefiles. Για την κατασκευή των εισαγωγών, το Makefile top-level κάνει τώρα δύο περάσματα: (1) βασίζεται libapp.a, τότε (2) εγκαθιστά τα προγράμματα σε apps / bin. (2) Προσθέστε το πρόγραμμα εγκατάστασης για CONFIG_BUILD_KERNEL σε όλα τα Makefiles που οικοδομούν μια main (). (3) Για τον πυρήνα κατασκευής, το αρχείο αντικείμενο που περιέχει main () δεν μπορεί να πάει στη βιβλιοθήκη εξαιτίας των συγκρούσεων ονομάτων. Το αρχείο αντικείμενο πρέπει να αντιμετωπίζεται ως ειδική περίπτωση σε κάθε Makefile.
  • Όλες οι Built-in Προγράμματα: Με πυρήνα κατασκευής (CONFIG_BUILD_KERNEL), το σημείο εισόδου σε όλα τα καθήκοντα είναι το κύριο (), όχι κάποια xyz_main ()
  • .
  • NSH: Πολλές εντολές πρέπει να απενεργοποιηθεί στο χτίσιμο του πυρήνα, επειδή εξαρτάται από τις διεπαφές που δεν είναι διαθέσιμα εκτός του πυρήνα:. Dd, df, losetup, mkfatfs, mkdr, και ps
  • Οι εφαρμογές / εργαλεία /: (1) Προσθήκη mkimport.sh να εκραγεί μια NuttX πακέτο εισαγωγή και εγκατάσταση σε εφαρμογές / εισαγωγής. (2) Προσθήκη mkromfsimg.sh σενάριο για να δημιουργήσει μια εικόνα εκκίνησης ROMFS σύστημα αρχείων.
  • ELF και NxFLAT Παραδείγματα: α. Να μην κατασκευάσει περιπτώσεις δοκιμής που χρησιμοποιούν task_create () αν υπάρχει ένα περιβάλλον διεύθυνση
  • Εργαλεία:
  • refresh.sh:. Προσθέστε ένα εργαλείο για να κάνει δροσιστικό διαμορφώσεις ευκολότερη όταν θέλετε να κάνετε πολλά από αυτά
  • mksyscall.c: Φτιάξτε syscalls που δεν χρειάζονται τα αρχεία κεφαλίδας
  • .
  • mkexport.sh:. Προσθέστε το αρχείο .config για να εξαγάγετε το πακέτο
  • Οι εφαρμογές / εργαλεία: Βλέπε παραπάνω για νέες εφαρμογές / εργαλεία scripts
  • .
  • Οι προσπάθειες σε εξέλιξη. Τα παρακάτω είναι τα χαρακτηριστικά που έχουν εφαρμοστεί μερικώς, αλλά υπάρχει σε αυτή την έκδοση. Δεν είναι πιθανό να ολοκληρωθεί σύντομα.
  • Διεργασίες: Μεγάλο μέρος του έργου σε αυτή την έκδοση επικεντρώνεται στην υλοποίηση των διαδικασιών χρήστη Unix-style στην NuttX. Υπάρχει για να γίνουν περισσότερα, όμως. Η πλήρης χάρτης πορείας και της κατάστασης είναι διαθέσιμο στη διεύθυνση: http://www.nuttx.org/doku.php?id=wiki:nxinternal:memconfigs#the_roadmap_toward_processes
  • XMega: Υπάρχουν μερικά κομμάτια στη θέση του για μια θύρα XMega. Ότι η θύρα δεν έχει αρχίσει πραγματικά, όμως.
  • Galileo: Ομοίως, υπάρχουν κομμάτια στη θέση του για ένα λιμάνι της Intel Galileo. Το λιμάνι δεν έχει ξεκινήσει για τα καλά, είτε.
  • Bugfixes. Μόνο οι πιο κρίσιμες διορθώσεις που αναφέρονται εδώ (βλέπε το Αλλαγών για τον πλήρη κατάλογο των διορθώσεις και για πρόσθετες, πιο λεπτομερείς bugfix πληροφορίες):
  • πυρήνα OS:
  • Kernel χτίσει διορθώσεις: (1) IDLE εγκατάστασης TCB πρέπει να δείξει ότι η αδρανής νήμα είναι μια προνομιακή, το νήμα του πυρήνα. (2) Μην χτίσετε task_create () ή task_spawn (interfaces) αν υπάρχει ένα περιβάλλον διεύθυνση. (3) posix_spawn () νήμα πυρήνα proxy θα πρέπει να είναι ένα νήμα πυρήνα, δεν είναι μια αποστολή του χρήστη.
  • Αρκετές διεπαφές Pthread: Προσθήκη const αποθήκευση για phthread παραμέτρους. Από Freddie Chopin.
  • προγρα μμα / ρολόι: Κατάργηση απομεινάρια της g_tickbias? πρέπει, αντ 'αυτού, να εφαρμόσει το χρόνο προκατάληψη για g_basetime ώστε να παρέχει τη σωστή ώρα του συστήματος.
  • Κλήσεις συστήματος: (1) Πολλά λάθη σταθερό? διορθώθηκε ένταξη των exevc (), κλήσεις execvl (), posix_spawn (), και posix_spawnp () του συστήματος. (2) Εάν έχουν ρυθμιστεί να χρησιμοποιούν μια στοίβα πυρήνα, ενώ στο χειρισμό syscall, τότε θα πρέπει να μεταβείτε πίσω στη στοίβα χρήστη να παραδώσει ένα μήνυμα.
  • Συστήματα αρχείων / Αποκλεισμός Οδηγοί / ΜΑΔ:
  • procfs: Fix κάποια θραύση procf που θεσπίστηκε με την αναδιοργάνωση ορισμένων μη reorganizable δομές δεδομένων. Από Ken Pettit.
  • At45: Σε at45db_bwrite (), το ρυθμιστικό δεν αυξάνεται όταν γράφετε πάνω από 1 σελίδα. Sourceforge bug # 34.
  • Binary Μορφές:
  • μετεγκαταστάσεις ELF: Ορισμένοι τύποι μετεγκατάστασης δεν έχουν ονομαστεί σύμβολο που συνδέονται με αυτά. Ο σχεδιασμός δεν ευθύνονται για αυτή την περίπτωση.
  • ELF Loader:. Κρίσιμη bugfix .. BSS δεν αποψιλώνονται
  • Διαχείριση Μνήμης:
  • κόκκων Κατανομέα: Κόκκος προετοιμασίας κατανεμητή χρησιμοποιεί λάθος εκχώρησης σε αναίρεση της μνήμης του πυρήνα
  • .
  • προνομιούχες ομάδες: Προσθέστε μια σημαία με τη δομή της ομάδας: Εάν η ομάδα δημιουργήθηκε από μια κλωστή πυρήνα, τότε όλοι οι πόροι της ομάδας πρέπει να είναι προνομιακή
  • .
  • Cryptogrphic Υποστήριξη:
  • Crypto / cryptodev.c: Τμήματα διαδρομής αντιστράφηκε περιλαμβάνουν διαδρομή του αρχείου. Σημείωσε ο Brennan Ashton.
  • κοινά προγράμματα οδήγησης:
  • Κοινή ΜΠΟΡΕΙ επάνω μισό: Σε can_txdone, σερβιτόροι στο σηματοφόρο πρέπει να ενημερώνονται ανεξάρτητα από την τιμή που επιστρέφει can_xmit. Πρώτα επιστρέφει -EIO αν δεν υπάρχουν νέα πακέτα, και το δεύτερο οι πληροφορίες από τους σερβιτόρους είναι για την τελευταία μεταφέρθηκε πακέτο. Από Daniel Lazlo Sitzer.
  • ARM:
  • Κλήσεις συστήματος: Fix κάποιο τυπογραφικό λάθος στην κλήση του συστήματος κατά την ανάκτηση της παραμέτρου από το σωρό: regs [REG_PC] 4 είναι η διεύθυνση δεν είναι, regs [REG_PC + 4]
  • .
  • STMicro STM32 Οδηγοί:
  • STM32 F401 UART: Σωστή υποστήριξη για USART6 σε αυτό το τσιπ. Από Freddie Chopin.
  • STM32 FLASH διορθώνει: χρησιμοποιήστε size_t αντί uint16_t, κάνει διεπαφή πιο γενικό. Από Freddie Chopin.
  • STM32 UART:. Αυτόματη UART7 και UART8 για STM32 ρολόι ενεργοποιήσετε από Aton
  • CAN: Στο τέλος του χειριστή διακοπών, οι διακοπές ήταν να είναι άτομα με ειδικές ανάγκες, εφόσον έχουν εξαντληθεί όλα τα πακέτα έχουν μεταφερθεί, όταν έγινε επίκληση του χειριστή διακοπής. Αυτό είναι προβληματικό, διότι ο χειριστής διακοπών καλεί can_txdone () της άνω ήμισυ το οποίο μπορεί Τοποθέτηση στην ουρά νέα πακέτα για την αποστολή. Αφαιρέθηκε το μπλοκ εντελώς, επειδή can_txdone () καλεί can_xmit (), η οποία απενεργοποιεί διακοπές, αν δεν υπάρχουν νέα πακέτα για την αποστολή. Από Daniel Lazlo Sitzer.
  • CAN:. Πρόσθετες διόρθωση STM32 CAN προτείνεται από τον Max Holtzberg
  • STMicro ST32 Πίνακες:
  • configs / mikroe-stm32f4: Fix λίγα συγκεντρώνουν έντομα και μικρές διορθώσεις στην πηγή διαμόρφωσης mikroe-stm32f4. Από Ken Pettit.
  • ARM9 / ARMv7-A:
  • Κλήσεις συστήματος: Fix ARM7 / 9 και Cortex-A syscalls: Για τα θέματα σε λειτουργία SVC, οι οδηγίες SVC clobbers R14. Αυτό πρέπει να ληφθεί υπόψη κατά την συναρμολόγηση inline.
  • Ρύθμιση Εργασιών: Όλες οι εργασίες, ακόμη και τα καθήκοντα κατάσταση ενός χρήστη, θα πρέπει να ξεκινήσει σε λειτουργία επόπτη μέχρι να ξεπεράσουμε την εκκίνηση τραμπολίνο
  • .
  • ARMv7-Α: Τροποποίηση up_fullcontextrestore () για CONFIG_BUILD_KERNEL. Θα αλλάξει CPSR ενώ στον πυρήνα. Αυτό θα παύσουν να λειτουργούν εάν η νέα CPSR είναι η λειτουργία του χρήστη κατά την εκτέλεση του χώρου του πυρήνα. Σταθερά προσθέτοντας μια κλήση συστήματος SYS_context_restore. Υπάρχει μια εναλλακτική λύση, απλούστερη τροποποίηση up_fullcontextrestore () που θα μπορούσαν να έχουν γίνει: Θα μπορούσε να ήταν δυνατόν να χρησιμοποιηθεί το SPSR αντί του Συμπιεστής και στη συνέχεια να κάνει μια επιστροφή εξαίρεση από up_fullcontextrestore (). Αυτό θα ήταν πιο αποτελεσματικό, αλλά ποτέ δεν το δοκίμασα.
  • Atmel SAM3 / 4 Πίνακες:
  • SAM3X / Arduino Λόγω: Fix τυπογραφικό λάθος στο sam3x_periphclks.h? προσθέστε ορισμοί SCLK να board.h αρχείο κεφαλίδας. Από Fabien Comte.
  • SAM3 RTT: Μόνο η οικογένειά SAM4 έχει RTTDIS λίγο στο μητρώο MR. SourceForge bug # 33 από Fabien Comte.
  • C Library:
  • sscanf (): NuttX libc προσπαθήσει να μαντέψει πόσοι χαρακτήρες θα αναλύσει, εξάγεται τους σε ένα ρυθμιστικό, στη συνέχεια έτρεξε strtol () σε αυτό το buffer. Αυτό εικασία ήταν λάθος συχνά. Μια καλύτερη προσέγγιση θα ήταν να καλέσει strtol () απευθείας στα δεδομένα εισόδου, χρησιμοποιώντας την τιμή επιστροφής endptr να καθορίσουν τον τρόπο πολλοί χαρακτήρες για να παρακάμψετε μετά από την ανάλυση. Από Κοσμά Moczek.
  • Μαθηματικά Βιβλιοθήκη:. Διορθώθηκε atan2 εφαρμογές από Denis Arnst
  • Floating Point εξόδου: Αλλαγή σε lib_dtoa () για να διορθώσετε το σφάλμα ακριβείας από μηδενικών στο τέλος. Από Bob Doiron.
  • Εφαρμογές:
  • εντολή Fix NSH PS:. Αν δεν υπάρχουν επιχειρήματα, θα μπορούν να εκτυπώνουν τα σκουπίδια για τη λίστα επιχείρημα
  • Διαμόρφωση / Build System:
  • Null Παράδειγμα: Ανάγκη να συμπεριλάβει config.h το σκοπό ξέρω αν αυτό είναι ή δεν είναι μια κατασκευή πυρήνα. Αυτό το πρόβλημα εξακολουθεί να υφίσταται σε πολλές άλλες αρχείο που μπορεί να χρειαστεί να ορίσετε main ().

Τι είναι καινούργιο στην έκδοση 7.8:

  • Χαρακτηριστικά: Πρόσθετες νέα χαρακτηριστικά και εκτεταμένη λειτουργικότητα:
  • πυρήνα OS:
  • Watchdog Timer Κατανομή: (1) Εάν εξαντληθεί προ-κατανομή των χρόνων φύλακα, η λογική θα διαθέσει συμπληρωματικούς χρονόμετρα από το σωρό. Ένα αποθεματικό διατεθεί εκ των προτέρων χρονόμετρα φύλακα διατηρείται έτσι ότι θα υπάρχει πάντα χρονόμετρα διαθέσιμα για διακοπή χειριστές. (2) Προστέθηκε υποστήριξη για στατικά κατανεμημένο φύλακα χρονόμετρο
  • Διεύθυνση Περιβάλλοντος Υποστήριξη: (2) Νέα OS APIs ενσωματωθεί σε όλα τα πλαίσια συγκεκριμένη πλατφόρμα λογική της μεταγωγής (up_block_task (), up_unblock_task (), _exit (), και άλλοι)
  • .
  • Kernel χτίσει την υποστήριξη: (1) Η MPU βάση & quot? Πυρήνα κατασκευής & quot? μετονομάστηκε σε ένα προστατευμένο κατασκευής (CONFIG_BUILD_PROTECTED)? προστέθηκε υποστήριξη για το νέο MMU-based & quot? πυρήνα κατασκευής & quot? (CONFIG_BUILD_KERNEL), (2) Η βιβλιοθήκη κλήση σύστημα μπορεί τώρα να οικοδομηθεί με CONFIG_NUTTX_KERNEL. Νέα επιλογή *:. CONFIG_LIB_SYSCALL
  • Εκκίνηση του Συστήματος: Προσθέστε τις επιλογές διαμόρφωσης για να ξεκινήσει το σύστημα από ένα πρόγραμμα σε ένα σύστημα αρχείων (έναντι μιας διεύθυνσης στη μνήμη)
  • .
  • Εκκίνηση πέρασμα παραμέτρων: χρησιμοποιείται για να υπάρχουν δύο τρόποι για να περάσετε παραμέτρους σε νέα καθήκοντα, ανάλογα με τη διαμόρφωση: είτε (1) argv [] καθώς δημιουργήθηκε ως μια σειρά με κάθε αλληλουχία strdup'ed. Ή (2) argv [] array και έγχορδα δημιουργήθηκαν στη στοίβα πριν από το νέο έργο ξεκίνησε. Τώρα, υπάρχει μόνο ένας τρόπος, τρόπος (2). Way (1) μπορεί να είναι ελαφρώς πιο συμπαγής, αλλά αυτό δεν αξίζει να φέρει την πολυπλοκότητα των δύο διαφορετικούς τρόπους να κάνεις το ίδιο πράγμα.
  • Διοικητικό Εκκίνηση: Προσθήκη ικανότητα να εκτελέσει την αρχική εκκίνηση του σκάφους σε ένα ξεχωριστό νήμα εργασίας. Αυτό είναι απαραίτητο, διότι υπάρχουν πολλές περιπτώσεις όπου η λογική προετοιμασίας δεν μπορεί να εκτελέσει για την εκκίνηση / IDLE νήμα. Αυτό οφείλεται στο γεγονός ότι το κλείδωμα ή αναμονής δεν επιτρέπεται στην αδρανή νήμα.
  • Διαχείριση Μνήμης:
  • κόκκων Κατανομέα: (1) Προσθέστε μια νέα λειτουργία για να κάνετε κράτηση un-εκχωρηθούν περιοχές στο σωρό κόκκων. (2) Προσθήκη διασυνδέσεις με την υποστήριξη του ΟΗΕ, να γίνει μια κατανεμητή κόκκο.
  • Σελίδα Κατανομέα: Προσθέστε ένα απλό κατανεμητή φυσική σελίδα με βάση την υπάρχουσα NuttX κόκκο κατανεμητή. Δεν είμαι σίγουρος αν ο κατανεμητής του κόκκου είναι επαρκώς ντετερμινιστικό για μακροχρόνια χρήση φάσματος, αλλά παίρνει πάρετε μια κατανεμητή σελίδα σε ισχύ για τον έλεγχο πολύ γρήγορα.
  • Κατάργηση CONFIG_MM_MULTIHEAP: Μη multiheap λειτουργία δεν υποστηρίζεται πλέον
  • .
  • sbrk ():. Sbrk () υποστηρίζεται τώρα στο χτίσιμο του πυρήνα για να επιτραπεί δυναμικά μεγέθους, ανά διαδικασία σωρούς
  • Ο Per-Διαδικασία Σωροί: Διάστημα στην αρχή του χώρου δεδομένων διεργασίας τώρα προορίζεται για τις δομές διαχείρισης σωρού χρήστη. Στη λειτουργία χτίσιμο του πυρήνα, οι δομές αυτές σωρό από κοινού μεταξύ του πυρήνα και τη χρήση κώδικα, προκειμένου να κατανείμει τα δεδομένα συγκεκριμένου χρήστη.
  • Χρήστης σωρού Διαχείρισης: Όταν ένας προνομιούχος εξόδους νήμα, θα πρέπει να χρησιμοποιήσετε το πρόγραμμα εκχώρησης του πυρήνα για να ελευθερώσετε μνήμη? όταν ένα μη προνομιούχους εξόδους νήμα, δεν έχουμε να κάνουμε τίποτα ... μνήμη σωρού θα καθαριστεί, όταν το περιβάλλον διεύθυνση κατεδαφιστεί.
  • Inter-διαδικασία υποστήριξης Κοινόχρηστη μνήμη: (1) Προσθήκη εφαρμογή και τεκμηρίωση για shmget (), shmctl (), shmat (), και shmdt (). (2) Προσθήκη σύστημα σύστημα καλεί να στηρίξει την πύλη κλήση χρήστη στις κοινές διεπαφές μνήμης. (3) Προσθήκη ορισμοί διεπαφή συγκεκριμένη πλατφόρμα για την υποστήριξη της λειτουργία κοινόχρηστης μνήμης.
  • Εικονική Σελίδα Κατανομέα: Προσθήκη υποστήριξης για ανά διαδικασία εικονική σελίδα κατανεμητή. Αυτό είναι ένα νέο μέλος της task_group_s δομής. Ο κατανεμητής πρέπει να προετοιμαστούν όταν μια νέα διαδικασία χρήστης ξεκινά και αρχικοποίηση όταν η ομάδα διαδικασία τελικά καταστρέφεται. Χρησιμοποιείται από shmat () και shmdt () για να επιλέξετε την εικονική διεύθυνση πάνω στην οποία να χαρτογραφήσει την κοινή φυσική μνήμη.
  • Συστήματα αρχείων / Αποκλεισμός Οδηγοί / ΜΑΔ:
  • SMART FS: SMART FS και SMART FS PROCFS ενημερώσεις από Ken Pettit
  • .
  • MTD:. Εμφανίζεται το στρώμα MTD-ανάγνωσης εγγραφής / ρυθμιστικό είναι πλέον λειτουργικό
  • Binary Μορφές:
  • Ο Per-διεργασία σωρού:. Προσθέστε τη λογική για να προετοιμάσει το ανά διαδικασία σωρό χρήστη όταν κάθε διαδικασία λειτουργίας χρήστη έχει ξεκινήσει
  • Γραφικά:
  • NxTerm: Αλλάξτε όλες τις εμφανίσεις της NxConsole να NxTerm
  • .
  • Δικτύωση:
  • ΦΥΣ Διακόπτει: (1) την τυποποίηση ενός interface επαφών ΦΥΣ διακοπής. (2) Προσθήκη υποστήριξης για IOCTL που μπορεί να χρησιμοποιηθεί για να κοινοποιούν την αίτηση όταν υπάρχει αλλαγή στην κατάσταση του δικτύου σηματοδοτείται από μια διακοπή ΦΥΣ.
  • Βελτιωμένη Αποστολή Λογική: Στο παρελθόν, το πρώτο πακέτο στείλει σε ένα νέο peer δίκτυο θα αποτύχει? δεν θα υπάρχει εγγραφή στον πίνακα ARP για την από ομοτίμους και έτσι μια αίτηση ARP θα μπορούσε να αντικαταστήσει αυτό το πρώτο πακέτο. Τώρα, ως επιλογή, αν CONFIG_NET_ARP_SEND = y, όλα στείλετε λογική θα (1) ελέγξτε εάν η διεύθυνση ομοτίμους MAC είναι στον πίνακα ARP και, αν όχι, (2) να απευθύνουν τις αιτήσεις ARP περιοδικά για να πάρει την χαρτογράφηση και (3), περιμένετε για την ARP απάντηση. Στη συνέχεια, (4), όταν η απάντηση ARP έχει δοθεί, τότε η πραγματική λογική αποστολή θα ξεκινήσει. Έτσι, μπορεί να υπάρξει καθυστέρηση με το πρώτο πακέτο στέλνεται σε ένα νέο ομοτίμους, αλλά το πακέτο δεν θα πρέπει να χαθεί
  • Διοργανωτής Προσομοίωση:
  • SPI Flash οδηγό:. Με προσομοίωση SPI FLASH πρόγραμμα οδήγησης για την κάρτα SIM του στόχου από τον Ken Pettit
  • Η Intel x86:
  • Προεπιλογή Διοργανωτής: Η προεπιλογή υποδοχής είναι τώρα x86_64 και η επιλογή -m32 θα επιλέγεται αυτόματα για την προσομοίωση χτίζει
  • .
  • Intel 8051 Οικογένεια:
  • 8051 καταργήθηκε: Αφαιρέθηκε κάθε υποστήριξη για το 8051 οικογένεια αρχιτεκτονική από το δέντρο πηγή NuttX. Το παλαιωμένο κωδικό μαζί με το επίθεμα απομάκρυνση μπορεί τώρα να βρεθεί στο misc / ξεπερασμένων /. Αυτός ο κωδικός αφαιρέθηκε επειδή (1), αν και κάποια λειτουργικότητα έχει αποδειχθεί, δεν είμαι ενήμερος για τυχόν πραγματικά επιτυχημένη λιμάνια της NuttX σε οποιοδήποτε 8051, και (2) το 8051, με stack του υλικού της, αναγκάζει τους περιορισμούς και τις επιπλοκές στις άλλες αρχιτεκτονικές και να κάνουν την ανάπτυξη και την εξέλιξη του NuttX πιο περίπλοκη.
  • ZILOG ZNeo Πίνακες:
  • configs / 16Ζ: Υποστήριξη για αυτό το συμβούλιο έχει αφαιρεθεί από το δέντρο πηγή NuttX (αλλά ακόμα μπορούν να βρεθούν στο misc / ξεπερασμένων κατάλογο). Αυτή η θύρα δεν είναι έτοιμη για χρήση, αλλά μπορεί να επιστρέψει στο NuttX δέντρο σε κάποιο σημείο στο μέλλον.
  • Atmel SAM3 / 4 Πίνακες:
  • SAM4E-EK:. Προσθέστε (1) μια πλήρως λειτουργική ILI9341-based οδηγό LCD και (2) μια πλήρως λειτουργική διαμόρφωση NxWM
  • ARMv7-Α:
  • Διεύθυνση Περιβάλλοντα: Προσθήκη υποστήριξης για περιβάλλοντα διεύθυνση εφαρμογής χρησιμοποιώντας το Cortex-A MMU. Εφαρμόζουν τυποποιημένες διεπαφές συγκεκριμένη πλατφόρμα της NuttX υποστήριξη διεύθυνσης περιβάλλοντος.
  • Λειτουργίες μνήμης cache: Εφαρμογή τυποποιημένη πλατφόρμα-συγκεκριμένες λειτουργίες της μνήμης cache. Αυτοί καλούνται από τον φορτωτή ELF για να ξεπλύνει D-cache και να ακυρώσει I-cache μετά από μια μονάδα ELF έχει φορτωθεί στη μνήμη. Με την αλλαγή αυτή, ενότητες ELF λειτουργήσει σωστά στο SAMA5 / Cortex-μια πλατφόρμα.
  • Kernel Σώμα: (1) Προσθήκη υλοποιήσεις της πύλης κλήση συστήματος. (2) Προσθήκη CRT0 αρχείο εκκίνησης που μπορεί να συνδεθεί με ξεχωριστά χτισμένα τα προγράμματα χρήστη. (3) Προσθήκη υποστήριξης για την παράδοση των σημάτων χρήση-mode στο χτίσιμο του πυρήνα. (4) Προσθήκη λογική για την προετοιμασία του ανά διαδικασία σωρό χρήστη όταν κάθε διαδικασία λειτουργίας χρήστη έχει ξεκινήσει. (5) ARMv7-Α χειρισμό εξαίρεση θα πρέπει να δουλέψουμε λίγο διαφορετικά, αν υποστηρίξουμε τις διαδικασίες λειτουργίας χρήστη. Αυτό οφείλεται στο γεγονός ότι τα R13 και R14 είναι σελιδοποιημένος διαφορετικά μεταξύ του χρήστη και τη λειτουργία SVC.
  • Κοινόχρηστο υποστηριζόμενων μνημών: (1) Προσθήκη λογική απαραίτητες για να χειριστεί remapping της κοινής μνήμης για εναλλαγές περιβάλλοντος. (2) Επέκταση εικονικού / μετατροπές φυσική διεύθυνση για να περιλάβει τις διευθύνσεις στην κοινόχρηστη μνήμη. (3) Προσθήκη υλοποίηση του συγκεκριμένη πλατφόρμα κοινόχρηστη μνήμη υποστήριξη.
  • Atmel SAMA5D Οδηγοί:
  • Δίκτυο ioctls:. Εφαρμογή όλων των ioctls δικτύου, συμπεριλαμβανομένου του νέου ioctl για ειδοποιήσεις συμβάντων ΦΥΣ εγκατάσταση
  • Διεύθυνση Μετατροπές:. Στον πυρήνα οικοδομήσει με τη διεύθυνση περιβάλλοντος, πρέπει η λογική να χαρτογραφήσει χρήστη εικονικές διευθύνσεις σε φυσικές διευθύνσεις, και αντίστροφα
  • Atmel SAMA5D Πίνακες:
  • SAMA5D3 Xplained, SAMA5D3-EK, και SAMA5D4-EK: Μετατροπή των υφιστάμενων διασυνδέσεων περιλαμβάνει συγκεκριμένες ΦΥΣ διακοπής για να χρησιμοποιήσουν τις νέες καθορισμένο πρότυπο διασύνδεσης
  • .
  • SAMA5D4-EK: Προσθέστε μια ρύθμιση για τον έλεγχο της διαμόρφωσης του πυρήνα κατασκευής. Υπάρχουν ρυθμίσεις για την εκκίνηση, είτε από μια κάρτα SD ή και στη μνήμη του συστήματος αρχείων ROMFS.
  • SAMA5D4-EK: Προσθήκη τεκμηρίωσης / υποστήριξης για Rev Ε σκάφους
  • .
  • STMicro STM32 Οδηγοί:
  • Ethernet: τροποποιηθούν για να υποστηρίξουν την αλλαγή στις αλλαγές υπογραφή ioctl δικτύου. Επίσης προσθέσετε υποστήριξη για νέους ioctl για ειδοποιήσεις συμβάντων ΦΥΣ εγκατάσταση.
  • STMicro STM32 Πίνακες:
  • STM32F4Discovery με STM32F4DIS-ΒΒ: Προσθέστε ένα δίκτυο ενεργοποιημένη διαμόρφωση NSH για το διοικητικό συμβούλιο STM32F4Discovery με τη βάση του σκάφους STM32F4DIS-BB εγκατασταθεί. Περιλαμβάνει υποστήριξη για την υποδοχή κάρτας microSD για τη βάση του σκάφους STM32F4DIS-ΒΒ.
  • TI Tiva Οδηγοί:
  • TI CC3200: Προσθήκη υποστήριξης για το CC3200 TI. Από Jim Ewing.
  • TI Tiva Πίνακες:
  • TI CC3200 Launchpad: Προσθήκη υποστήριξης για το TI CC3200 Launchpad. Από Jim Ewing.
  • C Library:
  • δημοσκόπηση ():. Re εφαρμόζονται δημοσκόπηση () καθυστέρηση χρησιμοποιώντας sem_timedwait ()
  • Διαμόρφωση / Build System:
  • Ο στόχος των εξαγωγικών: Στον πυρήνα ή προστατεύεται χτίζει, (1) μόνο οι βιβλιοθήκες χρήστης θα πρέπει να εξάγονται, (2) δεν αντιγράφετε εσωτερικά αρχεία κεφαλίδας ή να χτίσει τα σενάρια αν αυτό είναι ένας πυρήνας ή προστατευόμενη κατασκευή, και (3) τις ανάγκες να συσσωρεύσει επάνω το αρχείο εκκίνησης του χρήστη C (crt0), όχι το αμύγδαλο αντικείμενο το κεφάλι για τον πυρήνα και προστατεύονται χτίζει.
  • Πρόγραμμα CFLAGS: Προσθήκη λογική που θα μας επιτρέψει να οικοδομήσουμε βιβλιοθήκες χρηστών με διαφορετικά CFLAGS από κώδικα του πυρήνα. Αυτό είναι απαραίτητο, διότι χρειαζόμαστε τη -fno-κοινή επιλογή κατά τη δημιουργία κώδικα ELF για την πρόληψη των μετεγκαταστάσεων SHN_COMMON.
  • Εφαρμογές:
  • NSH: Επέκταση της προετοιμασίας λογική δικτύου NSH. Υπάρχει τώρα μια επιλογή που θα δημιουργήσει ένα δίκτυο νήμα οθόνη που θα παρακολουθεί την κατάσταση της σύνδεσης. Όταν η σύνδεση πηγαίνει κάτω, ο κωδικός θα προσπαθήσει να βάλει χαριτωμένα τον οδηγό Ethernet σε μια από τις κρατικό? Όταν η σύνδεση έρχεται πίσω, ο κωδικός θα προσπαθήσει να φέρει το δίκτυο back up.
  • ELF Παράδειγμα:. Η δοκιμή ELF / παράδειγμα έχει επεκταθεί, ώστε οι επιμέρους προγράμματα δοκιμών ELF μπορούν να συνδεθούν κατά τη βιβλιοθήκη syscall (εάν είναι διαθέσιμο) ή κατά τη βιβλιοθήκη της C να εξαλείψει ή να ελαχιστοποιήσει την ανάγκη για πίνακες σύμβολο
  • NxTerm: Αλλάξτε όλες τις εμφανίσεις της NxConsole να NxTerm
  • .
  • MTDRWB. Παράδειγμα: Προσθέστε ένα παράδειγμα προς εξέταση MTD R / W ρυθμιστικούς
  • OS Παράδειγμα Εξέτασης: Προσθέστε ένα ασήμαντο δοκιμή sem_timedwait ()
  • .
  • Εργαλεία:









































  • Εργαλεία:




  • Εργαλεία:
























































































  • Εργαλεία:


























  • Bugfixes:






































































































Παρόμοια λογισμικά

TeX Live
TeX Live

20 Feb 15

Ubuntu Core
Ubuntu Core

9 Dec 15

BackDroid
BackDroid

19 Feb 15

Kernelconfig
Kernelconfig

4 Jun 15

Σχόλια για NuttX

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!