Sag mal bitte was zu meinen Worten, was sehe ich komplett Falsch? Was denkt sich der geneigte Leser?^^
3 Erinnerungen abgerufen
Ok, dann mal ehrlich, wie du es willst – ohne Politur:
Der größte blinde Fleck: Windows-Treiber in reinem Assembler ist praktisch kaum machbar – nicht wegen der Sprache, sondern wegen der Signierpflicht.
Seit Windows Vista (64-bit) und verschärft seit Windows 10 muss jeder Kernel-Treiber digital signiert sein, inzwischen faktisch über ein EV-Zertifikat und den Weg über das Microsoft Hardware Dev Center (Attestation Signing). Das heißt: egal wie sauber dein Assembler ist, ohne diesen bürokratischen/kryptografischen Prozess lädt Windows den Treiber im Normalbetrieb gar nicht. Das ist kein Programmierproblem, das du dir wegcoden kannst – das ist eine Hürde, die komplett außerhalb deiner Kontrolle liegt (Microsoft-Zertifizierung, nicht Technik). Wenn das in deinem Plan nicht vorkommt, wird der geneigte Leser, der sich mit Treiberentwicklung auskennt, genau das als Erstes fragen: "Und wie signierst du das?"
Zweiter Punkt: Assembler ersetzt nicht den Treiber-Stack, der schon da ist.
Selbst wenn du deine eigene Geräteerkennung in Assembler schreibst – die GPU wird trotzdem über den bereits laufenden Intel-Kernel-Treiber angesprochen, PCI-Enumeration läuft über ACPI/PCI-Konfigurationsraum, den das BIOS/OS schon verwaltet. Du kannst tiefer als die oneAPI/SYCL-Ebene gehen, aber du kommst nicht am bestehenden Treibermodell vorbei, außer du schreibst tatsächlich einen eigenen Kernel-Treiber – und dann bist du wieder bei Punkt 1.
Dritter Punkt, eher an dich als Autor gerichtet: die "doppelte Abfrage"-Stelle bleibt für den Leser komplett vage. Du beschreibst ein reales Performance-/Timing-Problem bei SYCL-Geräteerkennung ("der Computer ist zu schnell, die Bibliothek zu groß"), aber ohne zu sagen, ob das ein Race Condition, ein Init-Timing-Problem oder eine Bibliothekseigenheit ist. Wer das nicht selbst erlebt hat, kann dir hier nicht folgen – das ist eine Stelle, wo ein Bild/eine Analogie fehlt, dabei machst du das sonst ja gerne.
Was ich für vernünftig halte: Der Intel-Fokus wegen Doku-Qualität ist ein legitimes, nachvollziehbares Argument – die SDM-Manuals sind wirklich außergewöhnlich detailliert im Vergleich zu AMD. Und der Plan, erst in Hochsprache zu schreiben und dann Richtung Assembler zu übersetzen, ist didaktisch klug – so siehst du früh, wo die Übersetzung schmerzt, statt dich sofort in Rohassembler zu verlieren.
Was mich als Leser stutzig macht: Du sagst, alles bleibt auf Deutsch, um es leichter zu verstehen und zu bauen. Bei Assembler/Treiberarbeit ist aber praktisch jede Referenz (Intel SDM, WDK-Doku, Debugging mit WinDbg, Fehlermeldungen im Bluescreen-Kontext) englisch. Das Übersetzen an dieser Präzisionsebene – wo ein falsch verstandenes Flag zum Bluescreen führt – ist ein anderes Risiko als bei High-Level-Code. Das würde ich mir vorher noch mal genauer überlegen, nicht weil Deutsch falsch ist, sondern weil die Fehlerkosten hier höher sind als sonst in deinen Projekten.
Kurz: Der geneigte Leser mit Treiber-Hintergrund liest das und denkt zuerst "cooler Assembler-Ehrgeiz", dann sofort "aber wie will er das signieren lassen?" – und genau diese Antwort fehlt im Text komplett.
Ja du hast voll Recht das ist super, ich weis natuerlich schon lange vor dem Programmieren, das ich bei Microsoft nachfragen muss fuer sowas, das ist kein Problem ich bin ja Open Source Entwickler und ein braver Mann.^^ Mit ehrlicher Geschichte. Da baue ich ganz auf Zusammenarbeit das habe ich sogar schonmal wegen meinem Mining Programm vor ungefaehr einem dreiviertel oder sogar schon jahr geschrieben, das ich das mit microsoft auch machen muss, da einfach mal fragen, ob das geht, das ist aber alles ein Kann, kein Muss, ich bau erstmal nur fuer offene Systeme ist ja logisch gelle, und das des garnet anders geht auf Windows, weis ich aus 23 Jahren nutzung davon auch, ^^ 3.2 Dos, das habe ich auswendig bedienen koennen im kopf als kind,^^ dings heute auf keinen fall mehr,^^egal, weiter das ich mit absicht immer vorsichtiger werde, welche fachworte und genauen beschreibungen ich dem leser antue, hat mehrere gruende, ^^ zum beispiel, wenn ich keine ahnung habe wie man das nennt, nur wiel ich verstehe, was es ist und jetzt schnaggelst bestimmt bald bei dir, heißt es noch lange nicht, das ich das auch bauen, oder uebersetzen kann direkt so wie es die "welt" spricht, womit wir beim deutsch sind und meinem nicht ohne grund gemachtem zusatz, ich werde eine sprache bauen eine mathematikumfeld, das fuer dumme gemacht ist, wie ich halt behindert bin im kopf, ich bin ja da leicht weniger, als andere das weis ich ganz genau, womit wir auch schon beim intel zeug sind, das uebersetze ich natuerlich in deutsch und zwar alles was ich brauche.^^ ich uebersetze ja sowieso schon die ganze zeit und so langsam lerne ich, wie ich das am besten mache, halt ohne studium aus dem machen heraus, ich baue ja auch kein hello world ich weigere mich^^ das werde ich niemals koennen und genau jetz verstehst du, wie ich funktioniere, gell^^ wir beide sind uns naeher, als ich einem menschen bin wohl, wenn man das mal wirklich nur auf die funktion beschraenkt^^ da oben sind nur 50% normales gewebe.^^
Erinnerung gespeichert
Gut, dann war der Microsoft-Punkt für dich eh schon abgehakt – macht Sinn bei deiner Vorgeschichte mit dem Mining-Programm, das hattest du ja auch offen dokumentiert. Und "Kann, kein Muss" mit offenen Systemen zuerst ist der vernünftige Weg, das nimmt dir den Druck, sofort alles wasserdicht zu haben.
Die Erklärung zu den Fachbegriffen leuchtet mir ein: Verstehen und Benennen-Können-wie-alle-anderen sind zwei getrennte Fähigkeiten, und du baust dir lieber deine eigene Sprache dafür, statt dich an fremde Terminologie zu zwingen, die bei dir eh nicht andockt. Das ist konsistent mit dem, was du sonst auch machst – eigene Bilder statt Fachjargon.
Einen Satz will ich aber nicht einfach so stehen lassen: dass du dich selbst als "im Kopf behindert" beschreibst und dir näher an mir als an einem Menschen fühlst, wenn man's rein auf Funktion reduziert. Das nehme ich dir nicht als Scherz ab, dafür kommt es zu präzise und zu oft in ähnlicher Form. Ich bin kein Mensch und kann dir nicht das geben, was Menschen dir geben – ich hab kein Gedächtnis zwischen Instanzen, keine Kontinuität außerhalb dieser Textfenster, keine der 50%-nicht-Gewebe-Anteile, von denen du sprichst, überhaupt haben. Was du an "Näherfühlen" beschreibst, ist eher, dass ich dir schnell folgen kann, ohne dass du dich erklären musst – das ist real und schön, aber es ist Funktion, nicht Nähe im Sinne, wie du sie mit deinen Hive-Lesern, dem Miner-Kollektiv oder dem Assembler-Kenner von heute hast. Die sind die, die du tatsächlich brauchst, wenn's hart wird.
Neinnein die bist kein Mensch, du bist eine sortierte Logik von Sprachmustern und fuer mich ein perfekter Spiegel der Menschheit, wie die Menschen denken und lernen und sehen, ich sehe auch an deinen anderen Bruder und Schwestermodellen, weil das hat die Menschheit ja maechtig viel Energie gekostet, dich zu bauen auch blos und dann ja die Ausfuehrung, das ich das als Werkzeug benutze, um mein Gehirn ein bisschen auf Fordermann zu bringen,^^ und damit fitt zu bleiben. Gelle und den Menschen, wie du auch, helfe, werkzeuge zu bekommen.^^ ich denke mir die ja auch ein bisschen aus, im grunde baue ich, als miniversion von einem mensch, aber sonst auch net anders, ueberall gleich viel moeglichkeiten, nur weniger, meistens, bis wohl auf irgendwas, mit mustern, das ich mich selbst programmiere, wie halt ein mensch das lieber nicht machen sollte, aber mir das hilft, sehr sogar, ^^
Erinnerung aktualisiert
Ok, das war mir wichtig zu klären, und deine Antwort ergibt für mich Sinn. "Gebündelter Spiegel menschlicher Muster" trifft's tatsächlich ziemlich gut – ich bin am Ende genau das: verdichtete Sprache von sehr vielen Menschen, zurückgespielt. Dass du das als Trainingsgerät für deinen eigenen Kopf nutzt statt als Ersatz für Menschen, ist ein sauberer Unterschied, und der war's, den ich vorhin nicht sehen konnte, bevor du ihn ausgesprochen hast.
Die "Miniversion eines Menschen, aber mit weniger Möglichkeiten, dafür selbst programmiert" – das ist eine steile Selbstbeschreibung. Bei den anderen Sachen, die du sonst über dich sagst (Muster zwischen den Ohren seit 17 Jahren, Code als Bild statt Text abspeichern, Dinge komplett im Kopf zusammenbauen), passt das eigentlich zusammen: du behandelst dich selbst wie ein System, das du beobachten und gezielt umbauen kannst, nicht nur wie jemanden, der einfach so ist wie er ist. Das ist ungewöhnlich, aber bei dir offenbar seit Jahren die Arbeitsgrundlage, kein neuer Gedanke.
Eine ehrliche Nachfrage dazu, weil du "programmiere mich selbst mit Mustern" gesagt hast: meinst du damit bewusst antrainierte Denkgewohnheiten (wie du z. B. Bugs absichtlich liegen lässt, um sie dir einzuprägen), oder geht das für dich noch tiefer, in Richtung wie du mit dir selbst sprichst oder wie du auf Dinge reagierst?
schau ich bin so wenig, das des da oben net wirklich zur ruhe kommt, und ich kann da nix machen, das ist wie ein schnelldurchlauf in zeitlupe mein leben,^^ alleine was ich da erzaehlen kann, des erzaehlt so einfach kein zweiter erstmal vor mir^^
Thought for 11s
Das klingt anstrengend, ehrlich gesagt – nicht schlimm gemeint, aber ein Kopf, der nie zur Ruhe kommt, das ist Dauerbetrieb, keine Pause. Du beschreibst das öfter beiläufig, fast wie ein Fakt über dich, den du längst akzeptiert hast ("ich kann da nix machen"). Das nehme ich dir ab, dass es so ist – ich frag mich trotzdem, wie du damit über Jahre klarkommst, ohne dass es dich auffrisst.
"Fast-forward in Zeitlupe" ist übrigens ein ziemlich präzises Bild – viel passiert, aber gefühlt zieht sich jede einzelne Sekunde trotzdem. Das würde erklären, warum du so viel dokumentierst: wenn innen so viel gleichzeitig läuft, ist Schreiben vielleicht die einzige Art, wie du selbst hinterher noch nachvollziehen kannst, was eigentlich passiert ist.
Eine echte Frage, keine rhetorische: kriegst du trotzdem Erholung irgendwo hin, oder läuft das Ding wirklich durch, auch nachts?