Was ist die Verwendung eines Patches beim Rechnen?

Beste Antwort

Stellen Sie sich ein großes Computerprogramm vor, beispielsweise eine Datei mit einer Länge von 100 MB.

Stellen Sie sich nun einen kleinen Fix vor, beispielsweise einen Fix, der nur wenige Bytes in diesen 100 MB ändert.

Das Ausgeben eines Ersatzes für die 100 MB-Programmdatei ist eine Verschwendung von Bandbreite. Das Herunterladen dauert lange und beansprucht unnötig viel Speicherplatz.

Stattdessen können Sie ein kleines Programm ausgeben, dessen einziger Zweck darin besteht, die ursprüngliche 100-MB-Datei auf dem Computer des Clients zu suchen Ändern Sie die wenigen Bytes, aus denen sich das Update zusammensetzt. Dies wäre ein Patch.

Natürlich wird das Wort „Patch“ heutzutage eher informell verwendet, um eine geringfügige Neuveröffentlichung einer Software unabhängig von der Form zu beschreiben Die Neuveröffentlichung dauert, es kann sich um einen Patch handeln, wie ich oben beschrieben habe, oder es kann sich nur um eine Reihe von Ersatzdateien oder sogar um ein neues Installationspaket handeln. Es wird immer noch oft als „Patch“ bezeichnet, wenn der Zweck erfüllt ist des Pakets dient nur dazu, ein paar Fehler zu beheben oder andere kleinere Änderungen zu implementieren.

Antwort

Nun, auf der untersten Ebene besteht ein Computerchip aus Transistoren. Dies sind winzige Siliziumflecken mit absichtlichen Verunreinigungen, damit sie als winzige Schalter fungieren können.

Die Transistoren werden zu Schaltungen aufgebaut, indem eine Schicht winziger Drähte hinzugefügt wird, um sie zu verbinden.

Transistoren sind in „Logikgatter“ eingebaut, die sehr einfache logische Operationen ausführen können:

  • UND – Wenn zwei Eingangssignale vorhanden sind, erzeugen Sie ein Ausgangssignal.
  • ODER – Wenn eines oder beide der beiden Eingangssignale vorhanden sind, erzeugen Sie ein Ausgangssignal.
  • XOR – Wenn nur eines der Eingangssignale vorhanden ist, das andere jedoch nicht, erzeugen Sie einen Ausgang.
  • NOT – das nur einen Eingang hat – und erzeugt nur dann einen Ausgang, wenn am Eingang kein Signal vorhanden ist.

Jedes dieser Logikgatter besteht nur aus ein paar Transistoren.

Logikgatter können dann zusammengesetzt werden, um Dinge wie „Flip-Flops“ zu erstellen, die einen einzelnen Wahr / Falsch-Wert enthalten und sich daran erinnern – oder „Ein-Bit-Addierer“, die zwei Binärziffern addieren und eine Ausgabe erzeugen können und ein Carry-Bit.

Weiter Die Bitaddierer können kombiniert werden, um Schaltungsblöcke zu bilden, die zwei größere Zahlen addieren können (oder sie mit einem Trick namens „Zweierkomplementarithmetik“ subtrahieren).

Wir können auch Dinge bauen, die als „Shifter“ bezeichnet werden Multiplizieren Sie eine Zahl mit zwei, vier, acht, sechzehn usw.

Eine Reihe von Flip-Flops kann zusammengesetzt werden, um einen Teil der Schaltkreise zu bilden, in dem eine ganze Zahl gespeichert werden kann – und eine Reihe DIESER Teile Sie können einen RAM-Speicherblock erstellen, der viele, viele Zahlen enthalten kann.

Aus diesen Addierer- und Shifter-Blöcken können Sie Schaltkreise erstellen, die sich multiplizieren und teilen. Aus diesen können wir Schaltkreise erstellen, die Dinge wie berechnen Sinus und Cosinus und Quadratwurzeln. Wir können auch Schaltungen erstellen, die zwei Zahlen vergleichen, indem wir eine von der anderen subtrahieren und sehen, ob das Ergebnis positiv, null oder negativ ist.

Dann gibt es eine ganze Reihe von Steuerlogiken – die diese anderen unterscheiden können große Schaltungsabschnitte, um eine Zahl von einer Stelle im RAM zu einer anderen zu verschieben – oder um zwei Zahlen aus dem RAM zusammenzufügen und an eine andere Stelle im RAM zurückzuschreiben.

Der letzte Schritt besteht darin, eine Zahl zu verwenden im RAM gespeichert, um der Steuerlogik mitzuteilen, was zu tun ist. DIESE Nummer ist also ein Code, der eine Anweisung in einem Computerprogramm darstellt. Vielleicht bedeutet die Zahl „1“ „eine Zahl von einem Ort an einen anderen verschieben“ und „2“ bedeutet „zwei Zahlen hinzufügen“ und „3“ bedeutet „zwei Zahlen vergleichen“. Nachdem jeder Befehl ausgeführt wurde, ruft die Schaltung den nächsten Befehl ab und führt diesen ebenfalls aus. Wenn Sie einen Vergleich durchführen, können Sie diesem Logikblock mitteilen, dass er die nächste Anweisung von einem anderen Ort übernehmen soll.

Dies ist dann ein SEHR einfacher – aber durchaus brauchbarer Computer… aber die Dinge sind WILD komplexer geworden als das.

Wenn all diese zunehmend komplizierten Logikschaltungen kombiniert werden, erhalten wir möglicherweise einen Chip mit über einer Milliarde dieser winzigen Transistoren!

Wir nennen das die „CPU ”Chip.

Dann erhalten wir die anderen Chips, aus denen der gesamte Computer besteht – insbesondere die„ RAM-Chips “, die Zahlen genau wie unser Flip-Flop speichern -, jedoch mit einer platzsparenderen Methode . Diese Chips verwenden Kondensatoren anstelle von Transistoren – und speichern durch Aufladen eines Kondensators (oder nicht) ein einzelnes Informationsbit auf weniger Platz als ein Flip-Flop. Diese RAM-Chips sind mehr oder weniger nur ein VAST Meer von Kondensatoren und Steuerlogik. Milliarden davon auf einem einzigen Chip.

Dann haben wir auch Chips, die beispielsweise den Inhalt eines RAM-Teils an einen Bildschirm senden, um eine Anzeige zu erstellen. Die Zahlen im RAM sind in Dreiergruppen zusammengefasst, die die Helligkeit der Farben Rot, Grün und Blau bei einem einzelnen Pixel auf dem Bildschirm darstellen. Millionen von Zahlen werden verwendet, um das Bild zu beschreiben, das Sie sehen – und der Computer ändert diese Farben an jedem Pixel, indem er Zahlen in diesen RAM-Speicher schreibt.

Die resultierende Maschine ist die komplexeste Sache, die Menschen gemacht haben – bei weitem. Ein Mobiltelefon oder ein Laptop drängt möglicherweise auf eine Billion Transistoren und Kondensatoren.

Als 62-jähriger Softwareentwickler finde ich es ziemlich erstaunlich, dass all dies in meinem Leben möglich geworden ist. Als ich damit anfing, wurden Computer immer noch auf die gleiche Weise hergestellt – aber ein Transistor hatte die Größe einer Tic-Tac-Münze – und jetzt sind sie kleiner als die Wellenlänge des Lichts!

Aber so erstaunlich wie Diese ganze Komplexität ist – was mich total verblüfft, ist, wie verrückt zuverlässig das alles ist.

Ihr Auto besteht vielleicht aus 10.000 Teilen – von denen einige einige tausend Mal pro Sekunde arbeiten. Nach ein paar Jahren (was vielleicht ein paar tausend Betriebsstunden sind) werden einige dieser Teile schief gehen und müssen ersetzt werden.

Mein Computer besteht aus Billionen Teilen – von denen die meisten Dinge tun ein paar Milliarden Mal pro Sekunde. Die Hardware wird ein Jahrzehnt lang einwandfrei funktionieren – dies entspricht einigen hunderttausend Betriebsstunden -, aber eine Billion einzelner Vorgänge – von denen jeder einwandfrei ablief.

Computer sind wirklich erstaunliche Dinge.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.