当前位置:网站首页>Le PDG a écrit le Code lui - même et est entré dans la liste des favoris pour créer une tarte aux framboises "métal nu" à partir de zéro

Le PDG a écrit le Code lui - même et est entré dans la liste des favoris pour créer une tarte aux framboises "métal nu" à partir de zéro

2021-10-14 06:55:03 Qbital

Xiaocha. De Temple d'avo
Bit quantique Couverture | Numéro public QbitAI

CEOÀ quoi ressemble le code écrit en personne?

DeRealVNCDe l'entrepriseCEODis - le.,J'ai passé des années à gérer,Le Code est rouillé,Alors j'ai décidé de reprendre le travail du programmeur,Écris un peuTarte aux framboisesCode.

Résultats,Par accident sur le Forum techniqueHacker News Chaud.

0ed214d3bdd20c81b357763ecf17a82f.png

Qu'est - ce que ce code?Ouvrez ceCEODeTwitterRegarde.,C'est un petit jeu.

d5fe103500640a7c9c9e75546d4760cd.gif

Il a fallu un an pour écrire ça?Bien sûr que non.,Celui - làCEOMais ce jeu créé à partir de zéro,Même les fichiers de démarrage du système ont été écrits par eux - mêmes.

D'habitude, on utilise des tartes aux framboisesSDBrosser la carte avec le système d'exploitation,En fait, la tarte aux framboises peut être faite à partir de zéro“Métal nu”(Bare Metal)Ordinateur.

c8f593b545a091e6cbb59e17cef45b7d.png

Ce qu'on appelle“Métal nu” C'est un ordinateur sans système d'exploitation , Exécuter les instructions directement sur le matériel logique .Celui - làCEODis - le., Construire un système en métal nu était son ambition d'enfance .

C'est pour ça qu'il y a cette chaîne , De zéro à un fonctionnement réussi Hello World, Et au programme qui exécute le petit jeu .

Depuis le démarrage du matériel jusqu'à Hello World

Pour l'instant, Le projet est terminé 12Chapitre,Toujours là.GitHub Continuer la mise à jour , A ce jour, on a récolté 1.6kStar.

287094fb49f54ca60188d3e8ebd71f62.png

Le contenu du projet est :Démarrage、 Construire le Code de base 、ExécutionHelloWorld、 Appelez Bluetooth Sound hardware, etc .

Préparez la tarte aux framboises avant d'écrire le Code 4 Du matériel périphérique :HDMILigne、micro-SD Cartes et USBTourne.TTLLigne.

Comme le processus de compilation est effectué sur l'ordinateur , Et le programme fonctionne sur la tarte aux framboises , Donc il faut aussi l'installer sur l'ordinateur Compilateur croisé.

Ensuite, démarrez la tarte aux framboises :

Tarte aux framboises4 Le premier code à exécuter doit être écrit dans le langage d'assemblage ,Par la suiteC Langage pour écrire le noyau .

Après avoir écrit le Code de démarrage , Re - production makefile Les fichiers sont croisés .

CFILES = $(wildcard *.c)
OFILES = $(CFILES:.c=.o)
GCCFLAGS = -Wall -O2 -ffreestanding -nostdinc -nostdlib -nostartfiles
GCCPATH = ../../gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf/bin
all: clean kernel8.img
boot.o: boot.S
$(GCCPATH)/aarch64-none-elf-gcc $(GCCFLAGS) -c boot.S -o boot.o
%.o: %.c
$(GCCPATH)/aarch64-none-elf-gcc $(GCCFLAGS) -c $< -o $@
kernel8.img: boot.o $(OFILES)
$(GCCPATH)/aarch64-none-elf-ld -nostdlib boot.o $(OFILES) -T link.ld -o kernel8.elf
$(GCCPATH)/aarch64-none-elf-objcopy -O binary kernel8.elf kernel8.img
clean:
/bin/rm kernel8.elf .o .img > /dev/null 2> /dev/null || true

Exécutionmake Construire l'image du noyau après kernel8.img, Copier le fichier miroir dans SDCarte, Pour démarrer la tarte aux framboises .

Mais la tarte aux framboises ne peut exécuter l'écran de démarrage qu'après cette opération , Il ne reste plus qu'un écran noir vide .

Et c'est ce qui familiarise les programmeurs de la tarte aux framboises “Hello World”Procédure, Mais comment fonctionne une machine à écran noir ?Il faut l'utiliser.UARTCommunication en série.

Je viens de préparer USBTourne.TTL La ligne est utile à ce stade .

Oui.TTLDeRXPlomb(Blanc)Lien versGPIODeTXDPin on,TXPlomb(Vert)Lien versGPIODeRXDPin on,Fil de terre(Ligne noire)Connectez - vous àGroundPin on.

361ec378b835b0eeb173f45843821ecf.png

L'ordinateur doit également être installé PuTTY, Sélectionnez le lien comme “Serial”,SpeedSet to115200

a733cff5647f137db8b957ba7138491a.png

Le fichier d'en - tête ici io.hIl n'existe pas non plus,Doit être défini par lui - même.

Mais il n'y a pas de fichier de police pour la tarte aux framboises en ce moment , C'est - à - dire que l'écran ne peut pas afficher correctement les lettres anglaises , La personnalisation est également nécessaire .Après une série d'opérations,Celui - làCEO Enfin affiché avec succès sur l'écran “Hello world!” Et quelques géométries .

88d5d56b7a88d54ed51831d1c58bec05.png

La programmation ne s'arrête pas là. ,Celui - làCEO L'échange d'informations sur Bluetooth a été réalisé plus tard 、 Lecture de fichiers audio, etc .Il a aussi dit, Le projet est toujours en cours de mise à jour .

À propos de l'auteur

“Métal nu” L'auteur de la tarte aux framboises Adam Greenwood-ByrneDiplômé de l'Université d'Oxford,2009Adhésion enRealVNC En tant que Directeur des ventes ,2018 Est devenu cette entreprise en CEO.

d559b81f4915aab53304f53da1d38a35.png

Le sien.GitHub Il n'y a actuellement qu'un seul projet sur la page d'accueil , Le contenu du premier chapitre a été complété pendant l'isolement de l'éclosion , Le projet est alors en sommeil .

f156e1881a64e2640ff35aa75c21ed93.png

Mais vu l'activité de cette année , Il a repris le projet cette année , J'ai commencé à écrire le Code sérieusement .

Liens de référence:
[1]https://github.com/isometimes/rpi4-osdev
[2]https://www.rpi4os.com
[3]https://twitter.com/isometim_es/status/1446359865274871818
[4]https://news.ycombinator.com/item?id=28774022

版权声明
本文为[Qbital]所创,转载请带上原文链接,感谢
https://chowdera.com/2021/10/20211013211437624c.html

随机推荐