Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » Warum sind Programme plattformabhängig?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
04.05.2004, 09:57 Uhr
~Marco
Gast


Hi,

das ist wirklich eine absolute Anfängerfrage, aber mich interessiert es einfach. Warum laufen Windows-Programme nicht unter Linux und Linux-Programme nicht unter Windows. Der eigentliche Prozessor enthält doch von beiden Maschinencode zur Verarbeitung und dem Prozessor müsste es doch eigentlich völlig egal sein, welches Betriebssystem gerade läuft.
Naja, bitte klärt mich auf.

mfg

Marco
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
04.05.2004, 10:17 Uhr
(un)wissender
Niveauwart


Die lokale API unterscheidet sich, und darauf basieren alle Anwendungsprogamme.
Nie wird einem normalen Programm erlaubt bspw. auf der Festplatte zu schreiben, dass ist nur mit einer Routine des BS möglich, die Teil der API ist.
Wenn das Programm volle Privilegien hätte, wäre es möglich Programme zu schreiben, die auf Linux und Windows laufen, vorrausgesetzt, beide System haben die gleiche Hardware.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
04.05.2004, 13:01 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


soweit wars mir bisher auch schon klar.
was ich mich noch frage ist warum sich beide nicht mal auf eine gemeinsame "Grund-Api" einigen auf die dann die einzelnen Betriebssystem aufbauen.
So ein APi-standard wäre schon was feines

Ist das nur von Microsoft nicht gewollt oder gibt es da noch andere Probleme...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
04.05.2004, 13:11 Uhr
(un)wissender
Niveauwart


Nicht aus der Sicht von Microsoft!
Inkompatibilitäten sind gewollt und werden gefördert, weil das Kohle bringt, oder warum hat MS wohl DX erstellt?
Um Programme an Windows zu binden...
Als BWLer sollte dir das Marketingkonzept bekannt sein.

Außerdem sieht man ja an OpenGL, dass es recht schwierig ist sich auf einen Standard zu einigen, der hinkt dann immer auch hinterher.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.05.2004, 13:39 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


das sich das aus finanziellen Gründen lohnt war mir schon klar... mein frage die du mehr oder weniger fast unbeantwortet gelassen hast, war ja was es für probleme geben würde einen gemeinsamen standard rauszubringen (jetzt mal davon abgesehen das man sich drauf einigen muss... )

wäre es mehr oder weniger möglich auf so einen gemeinsamen standard die heute gänigen betriebssystem aufzusetzen oder ist das "interne design und abläufe" so unterschiedlich das sich für sowas kaum ein sinnvoller standard definieren lassen würde?...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
04.05.2004, 14:04 Uhr
KaraHead



Wow windalf also das erschreckt mich ein bischen, dass du etwas nicht weißt
Es kommt noch soweit, dass virtual oder Oxdeadbeef noch fragen stellen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
04.05.2004, 14:13 Uhr
Pablo
Supertux
(Operator)



Zitat:
(un)wissender postete
Die lokale API unterscheidet sich, und darauf basieren alle Anwendungsprogamme.
Nie wird einem normalen Programm erlaubt bspw. auf der Festplatte zu schreiben, dass ist nur mit einer Routine des BS möglich, die Teil der API ist.
Wenn das Programm volle Privilegien hätte, wäre es möglich Programme zu schreiben, die auf Linux und Windows laufen, vorrausgesetzt, beide System haben die gleiche Hardware.


Weil beide Szsteme soz. unterschiedlich sich mit der Hardware komunizieren. ich würde vielleicht als vergleich sagen: Warum verstehen sich ein Japaner und ein Deutscher nicht, wenn sie zusammen reden? Weil beide nicht die Sprache sprechen, und mit sowas könnte man auch vergleichen, es kommt auf die API von Windows und Linux, wie wissender schon erwähnt hat, übrigens API bedeutet Application Programming Interface, so wie Werkzeuge, um Programme zum Laufen zu bringen.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
05.05.2004, 12:17 Uhr
~Marco
Gast


Hi,

vielen Dank für eure Antworten. Dadurch, dass Programme also nur auf die jeweilige Betriebssystems-API zugreifen können, sind sie also plattformabhängig. D.h. ja eigentlich, dass es selbst für eine Operation wie das Addieren zweier Zahlen eine Funktion in der API des Betriebssystems geben muss. Wenn man in C++ also den +-Operator verwendet, wird beim Kompilieren also dann die entsrpechende API-Funktion dafür aufgerufen.
Verstehe ich das richtig so?

Eure Diskussion finde ich voll interessant. Würde mich freuen, wenn noch weiter über dieses Thema hier diskutiert wird.

mfg

Marco
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
05.05.2004, 16:48 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Für Additionen wird keine API benötigt.

Das liegt daran dass die Betriebsystem verhindern das andere Programme Interrupts aufrufen (worüber im Prinzip alles Funktioniert), stattdessen muss, wie bereits gesagt, mit der API gearbeitet werden und das BS ruft die Interrupts auf.

Für so etwas wie eine Addition ist aber kein Interruptaufruf notwendig, sodass der Machinencode dafür auf den BS ausgeführt werden kann.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
05.05.2004, 19:07 Uhr
Pablo
Supertux
(Operator)


Für eine simple Addition nicht, aber für andere Sachen schon, wie zum Beispiel Netzwerk oder Laufwerkzugriff.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: