Ein "Pseudo Assembler".
C wurde ja gerade, deswegen entworfen, um Unix portierbar zu machen.
Wenn man mal PDP oder M68000 Assembler programmiert hat,
fällt Einem auch direkt auf, dass so etwas wie *i++ direkt zu Assembler Befehlen korrespondiert.
x86 Assembler ist allerdings etwas vorsintflutlicher.
Dort gibt es nämlich keinen orthogonalen Registersatz.
http://en.wikipedia.org/wiki/Orthogonal_instruction_set
Wenn man allerdings auf einer PDP oder einem M68000 in Assembler programmiert,
kann das genau so komfortabel sein, wie in C.
Es ist eine Mär, zu behaupten, dass Assembler effektiver sei, als C.
Wenn man wirklich an bestimmten Stellen händisch optimieren möchte,
kann man das ja mit inline Assembler machen (#pragma inline)
Das Projekt ist bestimmt ein interessantes Studienobjekt,
aber wird wohl zu keiner größeren praktischen Anwendung kommen,
weil das Zeug eben NICHT portabel ist.
Benutzer wird von Ihnen ignoriert. Anzeigen
Gebe dir vollkommen recht, aber ist Windows portabler? ;-)
Benutzer wird von Ihnen ignoriert. Anzeigen
> Gebe dir vollkommen recht, aber ist Windows portabler? ;-)
Theoretisch/Praktisch ja, denn ich habe (früher) mal Windows-NT auf einer Alpha laufen sehen.
Aber die Wirtschaftler bei MS haben das Projekt anscheinend gestoppt :-(
Benutzer wird von Ihnen ignoriert. Anzeigen
Den NT-Kernel hat MS ja eigentlich auch eher eingekauft.
Auf PPC lief der wohl auch mal. Und auf ARM sind die mit Mobile und so ja schon länger. Mit Win7 wohl sogar das große Windows auf ARM.
Benutzer wird von Ihnen ignoriert. Anzeigen
NT-Kernel schrieb:
> Den NT-Kernel hat MS ja eigentlich auch eher eingekauft.
Tatsächlich? Ich habe vor Jahren mal diesen Schinken gelesen
http://www.amazon.com/Inside-Windows-Nt-Helen-Custer/dp/155615481X
und wenn mich meine Erinnerung nicht täuscht, ist obige These ein hübsches Stammtischgerücht, aber nicht korrekt.
Benutzer wird von Ihnen ignoriert. Anzeigen
Ein Assembler setzt nur stur Mnemonics in Bytecode um.
C ist eine Hochsprache. Sie unterscheidet sich insofern, dass es einen compiler Braucht, der noch einen Zwischenschritt macht. Nämlich C-Code in architekturspezifischen Assembler-Code und dann in Bytecode.
Es ist aufgabe des Compilers für jede Architektur den Richtigen Befehl zu finden. Auf einem RISC wird derselbe Befehl vielleicht in mehrere Bytecode-Befehle umgesetzt während auf einem CISC einer reicht.
"*i++;" ist ein sehr simples Beispiel.
"float Fließzahl = 0.12345; " Schon nicht mehr.
Siehe auch
http://de.wikipedia.org/wiki/Assembler_(Informatik)
Benutzer wird von Ihnen ignoriert. Anzeigen
> Tatsächlich? Ich habe vor Jahren mal diesen Schinken gelesen
> [www.amazon.com]
> und wenn mich meine Erinnerung nicht täuscht, ist obige These
> ein hübsches Stammtischgerücht, aber nicht korrekt.
Der Windows NT-Kernel ist in der Tat eine Eigenentwicklung von Microsoft - auch wenn einige erfahrene Betriebssystementwickler daran gearbeitet haben, die vorher bei DEC beschäftigt waren.
Sehr lesenswert in diesem Zusammenhang ist vor allem
http://www.amazon.de/Showstopper-Breakneck-Windows-Generation-Microsoft/dp/0759285780/ref=sr_1_1?ie=UTF8&s=books-intl-de&qid=1250837422&sr=8-1
Der Windows NT-Kernel ist übrigens ausgesprochen Portabel - auch wenn viele Portierungen zur Zeit nicht kommerziell verwendet werden. Bekannte Portierungen sind:
* x86
* x64
* iA64 (Itanium)
* PowerPC (u.a. Xbox 360)
* Alpha AXP
* Mips
* N-Ten (Intel i860) -> ist Namensgeber zu "NT" gewesen
* PA-RISC (nur Laborversion)
* SPARC (öffentlich gezeigte Laborversion)
Benutzer wird von Ihnen ignoriert. Anzeigen
Auf einer PDP-11 mag das stimmen, aber moderne CPUs verfügen über Dutzende Befehle, die man in C nicht ansatzweise abbilden kann, z. B. MMX oder SSE.
Benutzer wird von Ihnen ignoriert. Anzeigen
Der NT-Kernel wurde von IBM geliefert, da Windows NT nichts anderes als ein modifiziertes OS/2 ist (steht auch mehr dazu auf Wikipedia).
Meines Wissens hat aber IBM den Kernel nicht selbst entwickelt, sondern dies eine externe Programmierklitsche machen lassen, die auf sowas spezialisiert war.
Der Kernel wurde selbst in neueren Versionen auf keinen Fall zu 100% bei Microsoft entwickelt, das ist totaler Quatsch, denn selbst bei Windows 7 sind noch Teile des Ur-NT-Kernels enthalten.
Benutzer wird von Ihnen ignoriert. Anzeigen
Kommentare: 830 | letzter Beitrag 00:13 Uhr
Kommentare: 285 | letzter Beitrag 05:48 Uhr
Kommentare: 232 | letzter Beitrag 24.05. 23:26
Kommentare: 156 | letzter Beitrag 02:51 Uhr
Kommentare: 154 | letzter Beitrag 00:04 Uhr
E-Mail an news@golem.de

Ein guter Hacker verdient in China 100.000 US-Dollar im Jahr. Die Fertigkeit, in fremde Systeme einzudringen, wird auf IT-Sicherheitsmessen ganz offen beworben und an Universitäten gelehrt.

Die Xbox One beobachtet den Spieler zwingend per Kinect - und könnte die Daten zumindest zum Teil an Microsoft weiterreichen. Sie hat eine 500-GByte-Festplatte und muss zum Spielen nicht immer mit dem Internet verbunden sein.

Ein Smartphone, das in einer halben Minute geladen ist, soll ein neuer Energiespeicher ermöglichen. Die Entwicklerin kam auf die Idee, weil sie sich über den dauernd leeren Akku ihres Mobiltelefons geärgert hat.

Wer ein gebrauchtes Spiel für die Xbox One verkaufen will, muss damit zum Händler marschieren: Dies berichtet zumindest ein britisches Fachmagazin. Unterdessen verkauft sich die neue Konsole schon sehr gut - und Microsoft verkündet hohe Ziele für seine "alte" Xbox 360.

Lenovos Finanzchef protzt, dass sich der PC-Hersteller jedes Unternehmen, das zum Verkauf steht, auch leisten könnte.

Peter Schaar wendet sich dagegen, dass Jobcenter-Mitarbeiter bei Facebook die soziale Lage der Menschen ausforschen und verdeckt Freundschaftsanfragen senden. Die Bundesagentur für Arbeit sagt, dass das gar nicht möglich sei.