Oracle Linux sur Btrfs pour le Raspberry Pi – Bien choisir son serveur d impression
Enterprise vient sur le micro serveur.
Oracle
Linux 7 est sorti pour le Raspberry Pi 3. La sortie
place Btrfs en tant que système de fichiers racine sous Linux 4.14 Long de marque UEK
Noyau de support de terme (LTS). Une image disque amorçable avec une installation minimale est
fourni avec un installateur ISO standard.
CentOS apparaît
soutenir seul le "Mustang" Applied Micro X-Gene pour
AArch64, et fournit l’ancien environnement AArch32 pour tous les modèles du
Tarte aux framboises. Oracle Linux est une option convaincante parmi les distributions RPM
en supportant AArch64 pour le modèle Pi 3.
Cela ne veut pas dire que Oracle AArch64 Linux est sans faille, comme Oracle
avertit qu'il s'agit "d'une version préliminaire et à des fins de développement uniquement;
Oracle suggère de ne pas les utiliser en production. "Le WiFi non fonctionnel
Le micrologiciel et la documentation de l’appareil sont manquants.
négligé. Aucun graphique X11 n'est inclus dans l'image, bien que vous puissiez
installez les. Le client de base de données éponyme (et le serveur) sont absents. Oracle
a fourni un exemple précédent de logiciel orphelin avec son Linux pour
SPARC projet, qui a été abandonné après deux versions mineures. Il n'y a pas
garantir que cette version d'ARM ne subira pas le même sort, bien que
Oracle a répondu que "notre cible éventuelle est la plate-forme de classe serveur".
Une cible matérielle possible est le Fujitsu A64FX, un nouveau processeur serveur.
qui regroupe 48 cœurs AArch64 adressables et 32 Go de RAM sur une puce,
affirmé être le "processeur de serveur le plus rapide" qui existe.
AArch64 sur le Pi
Vous aurez besoin d'un modèle 3 Raspberry Pi pour exécuter Oracle Linux. Le 3B + est le meilleur
appareil disponible, et vous devriez choisir cela par rapport au prédécesseur Modèle 3B et
tous les autres modèles précédents. Les deux cartes du modèle 3 conservent le (contraignant)
1 Go de RAM – une prise SODIMM serait beaucoup plus pratique. Le nouveau conseil
dispose d'un processeur 200 MHz plus rapide et d'un port Ethernet compatible Gigabit
(limité à 300 Mbits en raison de la liaison USB2 qui le connecte). UNE
Le modèle A existe aussi, mais il manque beaucoup des ports du 3B. Plus
important, la plate-forme Modèle 3 introduit un processeur 64 bits.
ARM était très tardif aux capacités d'adressage 64 bits par rapport à d'autres
familles de microprocesseurs bien connues, annonçant cette extension en 2011.
Première tentative d'Intel de migrer le marché du x86 vers le Itanium abortif
Architecture 64 bits livrée en 2001, cédant finalement à AMD64, qui
a fait ses débuts en 2003. MIPS et SPARC ont effectué cette transition beaucoup, beaucoup plus tôt
(1991 et 1995, respectivement).
Malgré l’arrivée tardive, l’architecture du processeur ARM AArch64 est désormais la
plate-forme mobile dominante. Tous les iPhones pris en charge sont maintenant nécessaires pour l’exécuter,
et la plupart des appareils Android modernes y ont migré. ARM a gardé la concurrence
à la pointe de l'efficacité énergétique, de vastes changements dans l'idéologie de son jeu d'instructions
et la mise en œuvre ont permis à ARM de conserver son leadership sur le marché des
mobile.
La machine Acorn / Advanced RISC (ARM) a été créée avec le nom rétroactif
AArch32 assemblage et langage machine conçu par Furber et
Wilson pour l'ordinateur de bureau Archimède, où une puissance énorme
l'efficacité "était un accident complet". Les performances du bureau sont restées un
foyer architectural pendant une décennie après la naissance d’ARM.
La décision d'Apple de baser Newton (qui a échoué) sur ARM a ouvert un nouveau marché de
applications de périphériques mobiles qui ont invité un nouveau jeu d'instructions pour
assemblage ultra-compactPouce 1 et
2. Ceux-ci sont distincts de AArch32 et
AArch64, et ils se concentrent sur la densité de code et l'empreinte minimale pour mobile
dispositifs. Le pouce 2 est un jeu d’instructions de longueur variable 16/32 bits, qui est
traduit dynamiquement en AArch32. De nombreuses autres extensions ARM existent, mais
Le pouce semble avoir à la fois une grande souplesse et une grande persistance sur ARM
mises en œuvre.
Lorsque les périphériques mobiles ont approché la limite de 4 Go de RAM ARM 32 bits, les concepteurs
décidé de rompre avec le passé. Les erreurs principales dans AArch32 ont longtemps
été connu:
Erreurs de conception, comme avoir r15 comme compteur de programme ou faire chaque
instruction conditionnelle, sont des problèmes pour les architectes CPU plutôt que
programmeurs, et il n’est pas surprenant qu’ils aient disparu dans le 64 bits
version de l'architecture ARM. Ils ont dû faire terriblement du mal à
implémenter une exécution superscalaire et dans le désordre.
Les modifications apportées à AArch64 la rapprochent beaucoup de l’esprit de MIPS, le plus
dont notables sont:
-
Conditionnel
Exécution a été supprimée, ce qui facilite le désordre
traitement dans plusieurs pipelines. -
le R15 / PC
registre peut maintenant être manipulé que par un petit nombre de
instructions de saut et de branchement, simplifiant grandement la prédiction de branche.
Ces améliorations de performances, ainsi que l’augmentation de la taille des pointeurs à
64 bits, au détriment de la densité du code – programmes compilés pour natif
AArch64 sera plus grand que l'équivalent pour AArch32. Malgré ces
améliorations, la majorité des processeurs de bureau Intel de la dernière décennie
facilement battre le Pi dans la plupart des points de repère (mais ils ne le feront pas avec un
Alimentation 10 watts). J'examine l'impact de la densité de code de AArch64
plus en détail ci-dessous.
Installation
La plupart des utilisateurs de Raspberry Pi s’appuient sur la mémoire flash, qui entre deux
grades. Le support de cellules multi-niveaux (MLC) est bon marché et offre de grandes quantités de
stockage, mais il peut se décomposer très rapidement (les cellules sont généralement détruites après
5 000 opérations d'écriture). La plupart des supports flash de vente au détail (cartes SD, clé USB
disques durs) sont des MLC et leur durée de vie ne sera pas longue avec une utilisation élevée des E / S,
malgré le "nivellement d'usure" électronique qui tente de distribuer
écrit sur tout l'appareil de manière uniforme. Un seul niveau de cellule (SLC) est
plus coûteux et offre de plus petites quantités de stockage, mais drastiquement
augmente le nombre d'opérations d'écriture jusqu'à la défaillance de la cellule (100 000). Tous les deux
types de mémoire peuvent être "réhabilités" par chauffage
leur, mais ce n'est pas
faisable pour la mémoire dans la plupart des emballages en plastique. Si vous prévoyez de grandes
quantités d’E / S, prévoyez d’acheter la bonne qualité de mémoire flash.
L'un des grands avantages du nouveau modèle 3 est la possibilité de démarrer à partir de l'USB. UNE
lecteur de disque dur standard est maintenant une option de démarrage. SLC media est aussi plus
abondant et peu coûteux dans le format flash USB que sous forme de cartes microSD.
Choisissez le format qui correspond à votre utilisation d'E / S prévue.
Une fois que vous avez sélectionné et obtenu votre média, vous êtes prêt à télécharger.
et décompressez le fichier suivant:
$ xz -dkv rpi3-ol7.6-image-20181116.img.xz
rpi3-ol7.6-image-20181116.img.xz (1/1)
100% 266,4 Mio / 5120,0 Mio = 0,052 55 Mio / s 1:32
La taille de l'image de démarrage est de 5 Go. Votre support de démarrage doit être au moins de
cette taille:
$ ll rpi3-ol7.6-image-20181116.img *
-rw-r - r-- 1 racine racine 5368709120 13 janvier 18:52
rpi3-ol7.6-image-20181116.img
-rw-r - r-- 1 racine racine 279309592 13 janvier 18:52
rpi3-ol7.6-image-20181116.img.xz
Insérez votre support de démarrage et assurez-vous qu'il est détecté, mais pas monté:
# dmesg | queue -3
[ 378.540649] mmc0: nouvelle carte SDHC haut débit à l'adresse 0002
[ 378.544104] mmcblk0: mmc0: 0002 00000 7.83 GiB
[ 378.548395] mmcblk0: p1
Finalement, écrire
l'image au média brut:
# dd si = rpi3-ol7.6-image-20181116.img de = / dev / mmcblk0 bs = 4M
En supposant qu’il n’y ait pas d’erreur d’écriture, le support est maintenant prêt à démarrer Raspberry.
Modèle Pi 3.
Opération
Chargez le support dans le Pi, connectez un câble HDMI à un moniteur et connectez
un câble ethernet. Une fois l’alimentation connectée, le Pi s’amorcera.
(il n'y a pas d'interrupteur d'alimentation).
Le Pi peut ne pas démarrer avec d’anciens périphériques USB. Quand un IBM bien porté
89P8800 Clavier USB 1.1 était connecté, le micrologiciel a émis le message
Timeout poll sur le noeud final d'interruption
et a refusé de démarrer. Essayer un peu
clavier Lenovo 41A5248 plus récent, l’amorçage s’est poursuivi mais a été considérablement retardé.
Les deux claviers ont fonctionné sans erreur une fois le système d'exploitation en marche. Ça pourrait être
sage de démarrer initialement sans aucun matériel USB non essentiel.
Une fois le démarrage terminé, un s'identifier:
l'invite doit être affichée. L'utilisateur
racine
avec le mot de passe oracle
vous permettra de
sélectionnez un nouveau mot de passe root,
puis déposer à Bash.
Le fichier / proc / cpuinfo listera quatre cœurs de processeur avec les éléments suivants:
descriptions:
[root@rpi3 ~]# cat / proc / cpuinfo
processeur: 0 ... 1 ... 2 ... 3
BogoMIPS: 38.40
Caractéristiques: fp asimd evtstrm crc32 cpuid
Implémenteur de CPU: 0x41
Architecture du processeur: 8
Variante de CPU: 0x0
Partie CPU: 0xd03
Révision du processeur: 4
Le système de fichiers racine est sur Btrfs, ce qui est une modification du système XFS que vous avez choisi.
voir normalement sur la version x86_64 (AMD64) de
Oracle / Red Hat / CentOS / Scientific Linux 7. Le système de fichiers / boot est sur EXT4,
probablement en raison de considérations sur le chargeur de démarrage:
[root@rpi3 ~]# mount | egrep 'btrfs | ext4'
/ dev / mmcblk0p4 sur / type btrfs
(rw, noatime, ssd, space_cache, subvolid = 5, subvol = /)
/ dev / mmcblk0p2 sur le type / boot ext4 (rw, noatime, data = commandé)
Observez aussi le ssd
option de montage ci-dessus. Btrfs a détecté cette option automatiquement
et était précédemment
peu sûr avec un "impact négatif sur
la convivialité et la durée de vie "du support flash, mais il est maintenant approprié dans le
4.14 noyau. Observez que l’option de montage SSD auto-détectée n’a pas été
spécifié dans / etc / fstab (j'ai supprimé les UUID et les LABEL):
[root@rpi3 ~]# sed -r 's / ^ (UUID | LABEL)[^ ]*[ ]* // '/ etc / fstab
#Generated by RootFS Build Factory
/ boot / efi vfat noatime 0 0
/ boot ext4 noatime 0 0
échange échange noatime 0 0
/ btrfs noatime 0 0
tmpfs / tmp tmpfs rw, nodev, nosuid, taille = 128 Mo 0 0
Le système de fichiers racine se trouve sur la partition p4 de la carte SD:
[root@rpi3 ~]# fdisk -l
Disque / dev / mmcblk0: 7948 Mo, 7948206080 octets, 15523840 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille du secteur (logique / physique): 512 octets / 512 octets
Taille d'E / S (minimum / optimal): 512 octets / 512 octets
Type d'étiquette de disque: dos
Identificateur de disque: 0x000164f6
Périphérique d'amorçage Début Fin Bloque l'id du système
/ dev / mmcblk0p1 2048 526335 262144 c W95 FAT32
(LBA)
/ dev / mmcblk0p2 526336 1550335 512000 83 Linux
/ dev / mmcblk0p3 1550336 2074623 262144 82 Linux
Swap / Solaris
/ dev / mmcblk0p4 2074624 10463231 4194304 83 Linux
Notez ci-dessus que je cours sur une carte SD de 8 Go, mais le dernier tiers de la
la carte est inutilisée, car elle ne se trouve pas dans une partition. Vous pouvez
ajouter l’espace inutilisé sur le système de fichiers racine en développant d’abord la partition:
[root@rpi3 ~]# growpart / dev / mmcblk0 4
CHANGED: partition = 4 start = 2074624 old: size = 8388608
↪end = 10463232 new: taille = 13449183, fin = 15523807
Et ensuite, étendre le système de fichiers Btrfs dans le nouvel espace alloué:
[root@rpi3 ~]Système de fichiers btrfs redimensionner max /
Redimensionner '/' de 'max'
Le système de fichiers racine occupe maintenant le reste du périphérique flash:
[root@rpi3 ~]# fdisk -l
Disque / dev / mmcblk0: 7948 Mo, 7948206080 octets, 15523840 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille du secteur (logique / physique): 512 octets / 512 octets
Taille d'E / S (minimum / optimal): 512 octets / 512 octets
Type d'étiquette de disque: dos
Identificateur de disque: 0x000164f6
Périphérique d'amorçage Début Fin Bloque l'id du système
/ dev / mmcblk0p1 2048 526335 262144 c W95 FAT32
(LBA)
/ dev / mmcblk0p2 526336 1550335 512000 83 Linux
/ dev / mmcblk0p3 1550336 2074623 262144 82 Linux
Swap / Solaris
/ dev / mmcblk0p4 2074624 15523806 6724591+ 83 Linux
Btrfs est un système de fichiers extrêmement puissant, aux capacités similaires à ZFS.
Il est capable de compression transparente, de mise en miroir, de détection d’erreur et
il a des capacités d'auto-guérison. (Surveillez un futur article sur Btrfs en profondeur
couverture.) Oracle Linux sur le Raspberry Pi fournit un apprentissage utile
environnement pour de nombreux nouveaux outils et fonctionnalités, et l'ajout de Btrfs est
chef parmi eux.
Un certain nombre d'utilitaires manquants sont présents dans un minimum
s'installe sur x86_64. Sans ordre de préférence particulier, certains sont
ethtool
,
Moins
, homme
et nmtui
. En supposant
connectivité Internet à Oracle, un Miam
apportera
installer l'hommeMoins
comme dépendance (et vous permettent de commencer à lire
toutes les pages de manuel de Btrfs). le miam ce qui fournit
commande est utile pour
rechercher le contenu des packages désinstallés pour un utilitaire particulier.
Busybox est une alternative aux packages Oracle AArch64 natifs.
Ceux qui ne connaissent pas Busybox pourraient revoir mon précédent
article de conteneur publié dans Journal Linux cela détaille son utilisation. le 1.28.1
Libération propose plusieurs binaires ARM de
Busybox (listée ci-dessous):
[root@rpi3 ~]# pour x dans busybox-arm *
do ls -l $ x; fichier $ x; ./$x | tête -1; terminé
-rwxr-xr-x 1 racine racine 1132724 10 janvier 17:23 busybox-armv5l
busybox-armv5l: ELF exécutable LSB 32 bits, ARM, version 1
(SYSV) ...
BusyBox v1.28.1 (2018-02-15 14:34:02 CET) binaire à appels multiples.
-rwxr-xr-x 1 racine racine 836560 10 janvier 17:23 busybox-armv7m
busybox-armv7m: objet partagé LSB ELF 32 bits, ARM, version 1
(SYSV) ...
BusyBox v1.28.1 (2018-02-15 14:34:02 CET) binaire à appels multiples.
-rwxr-xr-x 1 racine racine 1079156 10 janvier 17:23 busybox-armv7r
busybox-armv7r: Exécutable ELF 32 bits ELF, ARM, version 1
(SYSV) ...
BusyBox v1.28.1 (2018-02-15 14:34:02 CET) binaire à appels multiples.
-rwxr-xr-x 1 racine racine 1078504 10 janv. 17:23 busybox-armv8l
busybox-armv8l: ELF exécutable LSB 32 bits, ARM, version 1
(SYSV) ...
BusyBox v1.28.1 (2018-02-15 14:34:02 CET) binaire à appels multiples.
Notez ci-dessus que le busybox-armv7m
binaire est sensiblement plus petit que
tout le reste. Ce binaire est apparemment composé du code Thumb 2; le bras 7
Les architectures M et R semblent exclure à la fois AArch32 et AArch64:
"ARMv7-M …
Pas de prise en charge du jeu d'instructions ARM (pouce uniquement)."Le pouce pourrait
expliquer la petite taille, mais son utilisation peut avoir un impact négatif sur la performance.
Oracle comprend un AArch64
environnement de compilation, mais ce n'est pas susceptible de
être capable d'émettre du code ARMv7-M. Oracle ne fournit pas
glibc.aarch32
ou glibc.thumb2
paquet de la même manière qu'il fournit un
glibc.i686
sur AMD64, il n’existe pas non plus de bibliothèques 32 bits dans / usr / lib. BRAS
lui-même fournit Capable de pouce
Compilateurs GNU, comme le font d'autres sources. En utilisant
Le pouce en tant que cible du compilateur conservera de la mémoire au coût potentiel de
performance. Cela pourrait être un choix raisonnable pour les dæmons debout qui
ne sont pas gourmands en ressources CPU.
Un manque flagrant dans Oracle Linux sur le Raspberry Pi est le WiFi manquant
dispositif. Le noyau
dmesg
a un indice sur le problème:
brcmfmac: brcmf_fw_map_chip_to_name: using
brcm / brcmfmac43455-sdio.bin pour la puce 0x004345 (17221)
0xrev 0x000006
usbcore: nouveau pilote d'interface enregistré brcmfmac
brcmfmac mmc1: 0001: 1: Chargement direct du firmware pour
brcm / brcmfmac43455-sdio.bin a échoué
↪avec erreur -2
Vous pouvez trouver une source du firmware manquant sur ce lien,
bien que vous
peut également le trouver dans Raspbian. L’installation du micrologiciel entraînera une
wlan0 d'apparaître, mais toutes mes tentatives de le configurer ont échoué.
Il ne semble pas être fonctionnel dans la version actuelle, malgré le
brcmfmac
module de noyau:
[root@rpi3 ~]# cd / usr / lib / firmware / brcm /
[root@rpi3 ~]# ll brcmfmac43455 *
-rw-r - r-- 1 racine racine 600487 14 janvier 19:33
Brcmfmac43455-sdio.bin
-rw-r - r-- 1 racine racine 14036 14 janvier 19:49
Brcmfmac43455-sdio.clm_blob
-rw-r - r-- 1 racine racine 2054 14 janvier 19:41
Brcmfmac43455-sdio.txt
Il semble que les périphériques WiFi et Bluetooth du Raspberry Pi fonctionnent
à travers la carte SD SDIO
interface. Une fois que ces fichiers sont en place, redémarrez,
et le pilote WiFi devrait apparaître dans le dmesg
. Notez que cela utilisera un petit
quantité de mémoire supplémentaire:
mmc1: nouvelle carte SDIO haut débit à l'adresse 0001
brcmfmac: brcmf_fw_map_chip_to_name: using
brcm / brcmfmac43455-sdio.bin pour la puce 0x004345 (17221)
0xrev 0x000006
brcmfmac: brcmf_c_preinit_dcmds: Version du micrologiciel = wl0:
27 février 2018 03:15:32 version 7.45.154 (r684107 CY)
WFWID 01-4fbe0b04
Bluetooth: pilote générique Bluetooth SDIO version 0.1
Il n’ya aucune mention du matériel WiFi sur le Raspberry Pi au sein de
La documentation d'Oracle sur la version AArch64, qui, selon Oracle, était une
surveillance. Cela semble également être un problème dans CentOS, où il est au moins
discuté
à quelque longueur.
Densité de code
Comme 1 Go de RAM inclus sur le Pi est contraignant, vous devriez avoir une idée
de la peine imposée par AArch64.
Ci-dessous, un script que j'ai utilisé pour dimensionner tous les fichiers binaires ELF dans Raspbian.
Linux fonctionnant sur le Raspberry Pi d'origine, en le stockant dans le fichier
a32.txt:
pour x dans / bin / *
faire [ -f "$x" ] &&
case "$ (fichier" $ x ")" dans
* ELF *) stat -c% n % s "$ x" ;;
esac
done> a32.txt
Déplacement de ce fichier vers Oracle Linux s'exécutant sur le Raspberry Pi Model 3 B +, I
Exécutez la commande suivante pour trouver les différences de taille:
en lisant p s
faire [ -f "$p" ] &&
case "$ (fichier" $ p ")" dans
* ELF *) echo $ p $ s $ (stat -c% s "$ p") ;;
esac
terminé < a32.txt | awk '
a+=$2; b+=$3; print $1,$2,$3,$3/$2
END print a,b,b/a' > a64.txt
Pour ce petit échantillon de 66 fichiers, j'ai trouvé les résultats présentés dans le tableau 1.
Programme |
Raspbian | OL7.6 | % augmenter |
/ bin / bash | 912712 | 971728 | 1,06466 |
/ bin / cat | 30560 | 70408 | 2,30393 |
/ bin / chgrp | 51084 | 70944 | 1,38877 |
/ bin / chmod | 46956 | 70840 | 1,50865 |
/ bin / chown | 51092 | 71000 | 1,38965 |
/ bin / cp | 104592 | 204296 | 1.95327 |
/ bin / cpio | 118460 | 141752 | 1,19662 |
/ bin / date | 83868 | 70368 | 0.839033 |
/ bin / dd | 63424 | 136456 | 2.15149 |
/ bin / df | 67876 | 137848 | 2.03088 |
/ bin / dir | 108804 | 138240 | 1.27054 |
/ bin / dmesg | 59484 | 78296 | 1,31625 |
/ bin / echo | 26404 | 69904 | 2,64748 |
/ bin / false | 22304 | 69880 | 3.13307 |
/ bin / findmnt | 52144 | 71992 | 1,38064 |
/ bin / grep | 173656 | 204048 | 1,17501 |
/ bin / gzip | 80476 | 137400 | 1,70734 |
/ bin / nom d'hôte | 13964 | 69048 | 4.94471 |
/ bin / journalctl | 63204 | 538448 | 8.51921 |
/ bin / kill | 22020 | 70432 | 3.19855 |
/ bin / kmod | 128560 | 203960 | 1,5865 |
/ bin / moins | 151392 | 219472 | 1,44969 |
/ bin / lessecho | 9688 | 68752 | 7.09661 |
/ bin / lesskey | 14460 | 70320 | 4.86307 |
/ bin / ln | 46976 | 70848 | 1,50817 |
/ bin / login | 39112 | 70032 | 1,79055 |
/ bin / loginctl | 42732 | 538280 | 12.5966 |
/ bin / ls | 108804 | 138240 | 1.27054 |
/ bin / lsblk | 67756 | 138336 | 2.04168 |
/ bin / mkdir | 63472 | 137080 | 2.15969 |
/ bin / mknod | 55248 | 71272 | 1,29004 |
/ bin / mktemp | 34668 | 70288 | 2,02746 |
/ bin / more | 34708 | 69824 | 2.01176 |
/ bin / mount | 34872 | 68840 | 1,97408 |
/ bin / point de montage | 9896 | 68944 | 6.96686 |
/ bin / mv | 100504 | 138480 | 1,37786 |
/ bin / netstat | 106676 | 211912 | 1,9865 |
/ bin / ping | 55720 | 70208 | 1,26001 |
/ bin / ps | 83624 | 137000 | 1,63829 |
/ bin / pwd | 26452 | 70056 | 2,64842 |
/ bin / readlink | 34628 | 70448 | 2,03442 |
/ bin / rm | 51076 | 71056 | 1,39118 |
/ bin / rmdir | 34628 | 70072 | 2,02356 |
/ bin / sed | 84100 | 71904 | 0,854982 |
/ bin / sleep | 26416 | 69984 | 2,6493 |
/ bin / stty | 59240 | 70240 | 1.18569 |
/ bin / su | 31016 | 69008 | 2.22492 |
/ bin / sync | 26424 | 69912 | 2,64578 |
/ bin / systemctl | 161680 | 738032 | 4,56477 |
/ bin / systemd-ask-password | 9948 | 70000 | 7,03659 |
/ bin / systemd-escape | 9936 | 69816 | 7.02657 |
/ bin / systemd-hwdb | 67520 | 136520 | 2.02192 |
/ bin / systemd-inhibit | 14040 | 337728 | 24.0547 |
/ bin / systemd-machine-id-setup | 18128 | 69912 | 3,85658 |
/ bin / systemd-notify | 9936 | 69728 | 7,01771 |
/ bin / systemd-tmpfiles | 50988 | 202912 | 3,9796 |
/ bin / systemd-tty-ask-password-agent | 26324 | 135920 | 5.16335 |
/ bin / tailf | 22288 | 69488 | 3.11773 |
/ bin / tar | 327644 | 350288 | 1,06911 |
/ bin / touch | 71584 | 70640 | 0,986813 |
/ bin / true | 22304 | 69880 | 3.13307 |
/ bin / udevadm | 395336 | 469248 | 1,18696 |
/ bin / umount | 22436 | 68856 | 3,069 |
/ bin / uname | 26416 | 69928 | 2,64718 |
/ bin / vdir | 108804 | 138240 | 1.27054 |
/ bin / wdctl | 26408 | 70256 | 2,66041 |
5107652 | 9795488 | 1,91781 |
Ces programmes occupent près de deux fois plus d’espace dans Oracle Linux que dans
Raspbian. Ceci explique un peu la décision de CentOS de rester sur AArch32
avec des fichiers binaires 32 bits plus petits. La poursuite d'Oracle par AArch64 est probablement due à
plates-formes similaires qu'il prend en charge ou pourrait prendre en charge à l'avenir.
Si Oracle choisit de fournir un environnement de développement Thumb2 dans le même
manière à prendre en charge le x86 32 bits, alors Oracle pourrait produire encore plus
binaires que ceux trouvés dans Raspbian tout en exécutant un noyau 64 bits, à
certains coûts à la performance. Cela suppose que toutes les plates-formes cibles prennent en charge
Thumb2; De toute évidence, le Fujitsu A64FX ne le fait pas.
Il pourrait être utile d’examiner les serveurs communs, système
bibliothèques et extraire les tailles de segments text / data / bss dans toutes ces
programmes pour voir plus de détails sur la pénalité AAchr64 payée ici. Ceux avec
les grands déploiements d'ARM sont encouragés à le faire.
Conclusion
C'est rafraîchissant d'avoir une nouvelle distribution Linux où le support traditionnel est
slashed d'une manière qui ne serait jamais tolérée dans Intel / AMD64
environnements. Il y a beaucoup de complexité et d'inertie dans le
maintenance des systèmes des décennies passées.
Cependant, le silence relatif dans la documentation sur les questions de
support matériel négligé) et l’ancien Thumb et AArch32
jeux d'instructions est dérangeant. Les fournisseurs de systèmes d'exploitation doivent être clairs
sur ce que leurs produits peuvent et ne peuvent pas faire avec le matériel cible. Tandis que
il y a des problèmes avec Oracle AArch64 Linux où cette clarté fait défaut,
il faut admettre qu'il s'agit d'une version de pré-production et que le
la clarté et les plates-formes cibles AArch64 de niveau serveur prises en charge ne sont pas encore disponibles.
exister. Pour rappel, une cible matérielle possible est le Fujitsu A64FX,
que les concepteurs affirment comme le processeur le plus rapide du
monde. Amazone
également récemment commencé à exécuter des charges de travail ARM dans son cloud EC2 avec son
Graviton, mais les Gravitons ne devraient pas surpasser les performances
Fujitsu A64FX, et la relation entre Amazon et Oracle n'est pas chaleureuse.
Oracle peut également développer son propre AArch64 spécialement conçu pour
Base de données Oracle. Oracle a précédemment maintenu SPARC dans cette capacité,
et continue
dominer la référence de PTC avec elle; l'entreprise peut également décider de
faites-le avec son propre processeur ARM.
À propos de la base de données Oracle, l’absence de discussion ou de
la mention de celui-ci est également une cause de préoccupation substantielle sur la longévité de
la plateforme.
Dans tous les cas, Oracle AArch64 Linux sera probablement utilisé par de nombreuses personnes
faible consommation d'énergie, applications à grande mémoire. Le Raspberry Pi pourrait peut-être
fournir un environnement de développement pour ces grands systèmes. Ses
encourageant de voir ARM entrer dans l’espace des entreprises et la perspective de
un environnement informatique sans héritage sans tous les problèmes (Meltdown),
les scandales (ME / PSP) et les inquiétudes liées aux microprogrammes d’Intel sont rafraîchissants.
Commentaires
Laisser un commentaire