OS mit Pascal
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
evlt. sollte ich versuchen unter Linux meine Grafikkarte richtig zu unterstüten also dafür einen Treiber zu schreiben.... für meine Grafikkarte !
Stellt sich nur die frage: woher weiß ich welche Anweisungen von der karte kommen und was sie alles kann ?
und vor allem um was muss sich der Treiber alles kümmer und wie binde ich ihn ins System ein so das alle Anwendungen auto. drauf zugreifen wie halt ein Treiber ...
Seltsamem: auf einmal kann ich mit Pascal angeblich alles schreiben was ich möchte: Treiber ein OS... unter delphipraxis.de und delphiforum.de meinen viele das sei einfach unmöglich zuviel Aufwand.....
Stellt sich nur die frage: woher weiß ich welche Anweisungen von der karte kommen und was sie alles kann ?
und vor allem um was muss sich der Treiber alles kümmer und wie binde ich ihn ins System ein so das alle Anwendungen auto. drauf zugreifen wie halt ein Treiber ...
Seltsamem: auf einmal kann ich mit Pascal angeblich alles schreiben was ich möchte: Treiber ein OS... unter delphipraxis.de und delphiforum.de meinen viele das sei einfach unmöglich zuviel Aufwand.....
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 1187
- Registriert: Mi 13. Dez 2006, 10:58
- OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
- CPU-Target: AMD A4-6400 APU
- Wohnort: Hamburg
Das ist genausoviel Aufwand wie in C. Bei Assembler ist der Aufwand dann deutlich größer. Bei einigen Sachen ist dem Assembler eben der Vorzug zu geben, weil er einfach schnelleren Code produziert. Da gilt auch heute noch gegenüber einem hochoptimierendem Compiler kann der Assemblecode bis zu 50mal schneller sein, kann nicht muß.
Beliebtes Beispiel war früher immer die Versicherungsgesellschaft mit 5 Millionen Hausratversicherungen. Wenn die alle auf einen neuen Tarif umgestellt werden müssen, kann der Unterschied schnell ein paar Tage sein. Das sind dann virtuelle EDV-Kosten, bis jetzt hat mir kein Kaufmann beweisen können, das deswegen der Großrechner teurer geworden wäre oder man mehr Strom verbraucht hätte. Die Dinger laufen eh durch und die Leasingrate ändert sich auch nicht. Verluste kann das nur produzieren wenn die Umstellung auf den neuen Tarif zu spät beim gebeutelten Versicherungsnehmer ankommt...
Das wäre dann aber ein übler Bug in der "Managementkonsole", die scheinen sich (siehe Airbus) in letzter Zeit dramatisch auszubreiten...
Beliebtes Beispiel war früher immer die Versicherungsgesellschaft mit 5 Millionen Hausratversicherungen. Wenn die alle auf einen neuen Tarif umgestellt werden müssen, kann der Unterschied schnell ein paar Tage sein. Das sind dann virtuelle EDV-Kosten, bis jetzt hat mir kein Kaufmann beweisen können, das deswegen der Großrechner teurer geworden wäre oder man mehr Strom verbraucht hätte. Die Dinger laufen eh durch und die Leasingrate ändert sich auch nicht. Verluste kann das nur produzieren wenn die Umstellung auf den neuen Tarif zu spät beim gebeutelten Versicherungsnehmer ankommt...

Das wäre dann aber ein übler Bug in der "Managementkonsole", die scheinen sich (siehe Airbus) in letzter Zeit dramatisch auszubreiten...
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.
(Ringelnatz)
(Ringelnatz)
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
@schnuller du erzählst das es zu aufwendig ist ein nichtlineares executable zu laden willst aber dafür nen eigenen compiler schreiben gehts noch ?!
und der aufwand das executable zu laden wird dadurch belohnt das man pascal nutzen kann was die entwicklungsgeschwindigkeit wesentlich erhöht und saubereren code hinterlässt.
ausserdem kann man mit dem fpc durchaus auch coms erzeugen gibt ja n internen linker dem man im schlimmsten fall n eigenes eecutable format beibringen muss aber keinen compiler schreiben lol
und der aufwand das executable zu laden wird dadurch belohnt das man pascal nutzen kann was die entwicklungsgeschwindigkeit wesentlich erhöht und saubereren code hinterlässt.
ausserdem kann man mit dem fpc durchaus auch coms erzeugen gibt ja n internen linker dem man im schlimmsten fall n eigenes eecutable format beibringen muss aber keinen compiler schreiben lol
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 1187
- Registriert: Mi 13. Dez 2006, 10:58
- OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
- CPU-Target: AMD A4-6400 APU
- Wohnort: Hamburg
Noch nicht verstanden, BS und Compiler ähneln sich in vielen Belangen. Wer nen Compiler bauen kann, der kann auch ein BS bauen. Die Methoden und notwendigen Strukturen unterscheiden sich letztlich kaum voneinander. Für das BS müssen verschiedene Teile halt allgemeiner gefasst werden.
Deswegen lassen sich lex und yacc durchaus auch für Teile des BS mit Vorteil nutzen. Feinarbeit muß man in beiden Fällen leisten. Aber Sprache ist eben nicht nur Sprache, fasst man den Begriff Sprache einfach breiter, hat man die "Sprache" auch zu einem Begriff für das BS erweitert. Auch 1,50 Euro kann das Wort einer Sprache sein, genauso gut kann eine Speicheradresse das Wort einer Sprache sein, ganz so wie -5V = 0 und +5V = 1.
Sieht man sich mal die Litheratur zu BS und Compilern an, dann trifft man auf ganz ähliche Konzepte und Methoden, das ist kein Zufall, sowenig wie PASCAL oder früher sogar mal BASIC als BS. Das sind die 2 Seiten der gleichen Medaille, mehr war damit nicht gesagt.
Deswegen lassen sich lex und yacc durchaus auch für Teile des BS mit Vorteil nutzen. Feinarbeit muß man in beiden Fällen leisten. Aber Sprache ist eben nicht nur Sprache, fasst man den Begriff Sprache einfach breiter, hat man die "Sprache" auch zu einem Begriff für das BS erweitert. Auch 1,50 Euro kann das Wort einer Sprache sein, genauso gut kann eine Speicheradresse das Wort einer Sprache sein, ganz so wie -5V = 0 und +5V = 1.
Sieht man sich mal die Litheratur zu BS und Compilern an, dann trifft man auf ganz ähliche Konzepte und Methoden, das ist kein Zufall, sowenig wie PASCAL oder früher sogar mal BASIC als BS. Das sind die 2 Seiten der gleichen Medaille, mehr war damit nicht gesagt.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.
(Ringelnatz)
(Ringelnatz)
-
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 10:38
- OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
- Wohnort: Hessen
- Kontaktdaten:
Ich hatte mal versucht, unter assembler einen Konvertierer Dualsystem-Dezimalsystem-Hexadezimalsystem zu schreiben.
Habe es tatsächlich hinbekommen. Dann habe ich den Aufwand betrachtet, der zu dem Ergebnis geführt hat, und seit dem Assembler nicht mehr angefasst.
Das ist wirklich ein Murx, damit zu programmieren. Von der Unübersichtlichkeit her übertrifft Assembler sogar C.
Habe es tatsächlich hinbekommen. Dann habe ich den Aufwand betrachtet, der zu dem Ergebnis geführt hat, und seit dem Assembler nicht mehr angefasst.
Das ist wirklich ein Murx, damit zu programmieren. Von der Unübersichtlichkeit her übertrifft Assembler sogar C.
- af0815
- Lazarusforum e. V.
- Beiträge: 6855
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Einspruch, es ist der Programmierer. Ich habe auch mit dem Gespann M80/L80/CREF80/LIB80 (unter der Zilog Z80) gearbeitet. Das war Assembler in Reinkultur.Das ist wirklich ein Murx, damit zu programmieren. Von der Unübersichtlichkeit her übertrifft Assembler sogar C.
Wenn du sauber Programmiert hast, hast du eigene Biblotheken erhalten und es war excellent nachvollziehbar (auch nach Jahren).
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
- af0815
- Lazarusforum e. V.
- Beiträge: 6855
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Nicht mehr möglich, sind von mir vor ca. 2 Jahren entsorgt worden.
Ausserdem, ein Hardwarezugriff unterscheidet sich nicht wesentlich von einem Zugriff aus eine Speicherstelle. früher war das teilweise sogar gleich (Die Geräteadressen wurden in den Adressspeicher gelegt). Schau mal beim PC unter 'richtigen' DOS, was da alles zwischen 640k und 1MB gelegen ist.
Punkto Gefährlichkeit beim Hardwarezugriff ist also zwischen einem Assembler und einem Hochsprachenprogramm kein Unterschied. Du musst nur wissen was du tust. Da ist die Sprache vollkommen egal, sch...e kannst du mit beiden ganz schnell bauen, bei Pascal hilft dir der Compiler noch, das du ein x für ein u machst, aber dann ist auch sense. Arbeite mal so wirklich mit pointern und dem Heap und lass die ganzen TList weg. Dann kommst du rasch in Teufels Küche, wennst du a) nicht sauber schreibst b) nicht mitdokumentierst. Dann weist du am Montag nicht mehr, was du am Freitag noch verbockt hast. Spätestens wenn du nach einem 1/2 Jahr deinen eigene Code überarbeiten musst, dan trittst du dich selbst in den A. weil du nicht sauber gearbeitet hast. Spätestens in der Gruppe oder Community, musst du dann dir Frage gefallen lassen: 'Hast du was zugemachtes übersehen'.
Ausserdem, ein Hardwarezugriff unterscheidet sich nicht wesentlich von einem Zugriff aus eine Speicherstelle. früher war das teilweise sogar gleich (Die Geräteadressen wurden in den Adressspeicher gelegt). Schau mal beim PC unter 'richtigen' DOS, was da alles zwischen 640k und 1MB gelegen ist.
Punkto Gefährlichkeit beim Hardwarezugriff ist also zwischen einem Assembler und einem Hochsprachenprogramm kein Unterschied. Du musst nur wissen was du tust. Da ist die Sprache vollkommen egal, sch...e kannst du mit beiden ganz schnell bauen, bei Pascal hilft dir der Compiler noch, das du ein x für ein u machst, aber dann ist auch sense. Arbeite mal so wirklich mit pointern und dem Heap und lass die ganzen TList weg. Dann kommst du rasch in Teufels Küche, wennst du a) nicht sauber schreibst b) nicht mitdokumentierst. Dann weist du am Montag nicht mehr, was du am Freitag noch verbockt hast. Spätestens wenn du nach einem 1/2 Jahr deinen eigene Code überarbeiten musst, dan trittst du dich selbst in den A. weil du nicht sauber gearbeitet hast. Spätestens in der Gruppe oder Community, musst du dann dir Frage gefallen lassen: 'Hast du was zugemachtes übersehen'.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
ich hab zwar noch keinen compiler gebaut aber son mini os hab ich in 2 jähriger arbeit mal zusammengebautNoch nicht verstanden, BS und Compiler ähneln sich in vielen Belangen. Wer nen Compiler bauen kann, der kann auch ein BS bauen. Die Methoden und notwendigen Strukturen unterscheiden sich letztlich kaum voneinander. Für das BS müssen verschiedene Teile halt allgemeiner gefasst werden.
ich seh da immer noch nicht wiso ein compiler und n os gleiche strukturen haben sollen. n os stellt betriebsmittel bereit in einer einheitlichen zugriffsstruktur und ein compiler erzeugt aus einer hochsprache assembler ist also quasi eine vereinfachungsmaschiene
ich seh da nirgendwo zusammenhänge und wie du hardwarezugriffe mit lexx und yacc lösen willst musst mir mal zeigen kannst ja mal aus dem fpc n betriebsystem bauen

W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 10:38
- OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
- Wohnort: Hessen
- Kontaktdaten:
Habe eben versucht, meine Assembler-Progrämmchen zu finden. Irgendwan in näherer Vergangenheit sind sie mir auch mal wieder über den Weg gelaufen. Habe sie nur par tout nicht gefunden...pluto hat geschrieben:kannst du mal so eine datei hochladen die in Assembler geschrieben wurde ?
würde mir ich mir gerne mal ansehen !
ich weiß nur das Assembler nicht gerade einfach ist und auch gefährlicher ist als Hochsprachen.... weil du hast ja direkten Hardware zugrief....,.
... wenn es wieder auftaucht, werde ich es hier reinstellen.
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Assembler ist nicht kompliziert nur aufwendig.
Da is n Wikibook:
http://de.wikibooks.org/wiki/Assembler_ ... rammierung
Da is n Wikibook:
http://de.wikibooks.org/wiki/Assembler_ ... rammierung
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
OMG Monti kann man nicht sone art Fragebogen bei der registrierung machen
*Möchtest du dein Eigenes Betriebsystem in Pascal programmieren ?
*Wieviel nicht Abgeschlossene Projekte hast du ?
*Wieviel Abgeschlossene Projekte hast du ?
*Bist du unter 6 Jahre alt ?
und dann wenn 1. mit Ja beantwortet wird oder 2. / 3. > 1 oder 4. mit Ja beantwortet wird die Registrierung verweigert oder sowas ?
*Möchtest du dein Eigenes Betriebsystem in Pascal programmieren ?
*Wieviel nicht Abgeschlossene Projekte hast du ?
*Wieviel Abgeschlossene Projekte hast du ?
*Bist du unter 6 Jahre alt ?
und dann wenn 1. mit Ja beantwortet wird oder 2. / 3. > 1 oder 4. mit Ja beantwortet wird die Registrierung verweigert oder sowas ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/