Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - BigOlly

Seiten: [1] 2 3 ... 5
1
Lowlevel-Coding / Festplatte löschen
« am: 24. April 2005, 13:52 »
Also um das mal hier in die richtige Bahn zu lenken:

Ob Du die gesamte Festplatte mit dem BIOS anfassen (also jeden Sector lesen und schreiben) kannst hängt von der Größe der Festplatte und Deinem BIOS ab.

Jetzt könnte ich hier eine Liste machen aus der hervor geht was ein BIOS können muss um welche Platten-Größen benutzen zu können.
Das spare ich mir denn diese Listen gibt es zu hauf im Internet!

Zu Deiner Frage Highway kann ich Dir aber folgenden Tip geben:
Ein BIOS von "heute" kann jede Plattengröße Adressieren. Du kannst also, wenn Dein Board nicht gerade 5 Jahre alt ist, mit Sicherheit jeden Sector einer Festplatte, auch wenn sie z.B. 200GB hat mit dem BIOS auslesen, schreiben, löschen etc.

Im Zuge meines Betriebssystems (Boot-Prozess und eigenes File-System) habe ich mich intensiev mit diesem Thema beschäftigt.
Mein OS kann z.B. auch von einer 250GB-Platte booten wenn der Bootsector z.B. irgendwo hinter 220GB liegt.

Ein Tip noch:
Selbstverständlich musst Du die erweiterten BIOS-Funktionen nutzen, int 02h gibt das datürlich nicht her. Aber diese Erweiterung haben die BIOSe schon seit Jahren eingebaut.

noch Fragen?  :lol:

Gruß BigOlly
2
Offtopic / Seltsames Geräusch aus dem Rechner
« am: 12. April 2005, 02:38 »
Was soll ich erst sagen... Mein Rechner macht: "dum-dumdidum-di-dum" immer wenn ich Windows starte!!!  Das ist vielleicht erstmal lästig.  ](*,)

Aber Scherz bei Seite:
Windows hat ja meisst für alle Geräte Treiber die alle Features ansprechen und ausnutzen (z.b. Lüftersteuerung auf der Grafikkarte oder dem Board), wärend Linux und andere Exoten oft nur die "Grundfunktionen" in ihren Treibern implementiert haben.
Vielleicht tritt es deshalb unter Windows nicht auf.

Ein leises hochfrequentes Pfeifen könnte übrigens tatsächlich am Netzteil liegen. Allerdings dürfte dies Betriebssystem-unabhängig sein.

Gruß BigOlly
3
Lowlevel-Coding / Grafikkartenstandards?
« am: 12. April 2005, 02:22 »
Tja Netmaster, das ist ja das große Problem mit den Grafikkarten....!
Die Antwort lautet NEIN! Es gibt keine "Standards" die über VGA und VESA hinausgehen.
Die Grafikkarten-Hersteller halten ihre Register, Befehle und Strukturen ihrer Chips streng geheim. Dies gilt sogar für ältere Chips wie Riva, Rage, Trio64 oder ET4000.

Also gilt:
Komm mit VESA aus oder zerpflücke die Linux-Treiber um herauszufinden wie was angesteuert wird.

Gruß BigOlly
4
OS-Design / Installer wie bei Windows
« am: 03. March 2005, 16:46 »
Also ich möchte noch anmerken das Du mit FAT12 nicht weit kommst wenn Du von Festplatte booten willst. Es sei denn Du legst Dir eine sehr kleine Partition in der Größenordnung von 4MB an.

Ansonsten durchsuche mal das Forum, nach Beiträgen zu diesem Thema. Ich hatte die Schritte die man machen muss um von Festplatte zu booten schonmal ausführlich beschrieben. Dies kannst Du testweise von Hand machen oder eben Du schreibst ein Programm welches diese Schritte ausführt.

Also such mal... (ich hab jetzt keine Zeit das raus zu suchen...:-)  )
5
OS-Design / Aussehen des kompletten RAMs
« am: 01. March 2005, 13:13 »
Tja, mann könnte sogar sagen das jedes 32-Bit-OS die gesammten Bios-Ints nachproggen muss. :-)
Das ist nunmal so. Deshalb ist es ja auch keine Aufgabe wie "ich progge mal ein Programm" sondern wie "ich progge mal ein OS".  ](*,)

Nochmal zum Speicher zwischen A0000h und FFFFFh:
Wie blueXseven schon sagt... lieber nicht benutzen. Selbst wenn Du das hinbekommst, sobald Dein OS auf einem anderen Rechner gestartet wird, könnte dieser Bereich schon wieder gaaaanz anders aussehen. Und wenn Du mal ne PCI-Karte reinsteckst (z.B. SCSI) könnte diese auch wieder einen Block da oben brauchen, und schwups ist auch schon wieder Deine RAM-Planung dahin.

Aber Du hast Recht, die 640kB (bzw 632kB ohne BDA und EBDA) sind natürlich etwas knapp für ein neues tolles schönes OS.
Deshalb benutze ich den Bereich da unten auch nur für die Boot-Programme (Bootsectoren) und für meinen Kernelloader. Dieser läd den Kernel an die Adresse 100000h (also genau an 1MB) und startet diesen.
Aber das geht natürlich nicht ohne PM.

Gruß BigOlly
6
OS-Design / Aussehen des kompletten RAMs
« am: 28. February 2005, 02:50 »
In einem anderen Thread hatte blueXseven mal einen schönen Link zu diesem Thema gepostet, den ich gerne weiter gebe: :-)

http://my.execpc.com/~geezer/osd/ram/index.htm

Falls Du den Thread lesen willst, hier:
http://www.lowlevel.brainsware.org/forum/viewtopic.php?t=484

(es ging und den Erweiterten BIOS-Datenbereich)

Gruß BigOlly
7
Offtopic / Meinung gefragt (in musikalischer Hinsicht...)
« am: 27. February 2005, 18:12 »
Nun ja, ein Techno-Fan bin ich auch nicht. Aber schlecht hört es sich nicht an! :-)
Find ich jedenfalls. Immerhin, ist ja selbst gemacht. Besser als alles was ich bisher mit meinem XV2020 angestellt hab.

Was mich aber mehr interessieren würde ist:
Mit welcher Technick/Equipment hast Du das gemacht? Welcher Sequenzer, Keyboard usw... Hast Du die Stimme selber eingesungen und wie wurde die Stimme bearbeitet? Autotute? Verzerrer?  ...naja, Du weisst was ich fragen will. :-)

Gruß BigOlly
8
Lowlevel-Coding / Ich finde den Fehler net....
« am: 19. February 2005, 14:40 »
Öhmmm... Du musst natürlich aufpassen wo Du was includest! Das Thema hatten wir schon in nem anderen Thread.
Dort wo die Include-Anweisung steht wird auch includet.


%include "strings.asm"

org 0x7C00 ; Unsere Startadresse

; -----------------------------------------
; Unser Bootloader
; -----------------------------------------



versuch es mal so:


org 0x7C00 ; Unsere Startadresse

                    jmp   AfterInclude

%include "strings.asm"

AfterInclude:

; -----------------------------------------
; Unser Bootloader
; -----------------------------------------



Oder include ganz am Ende.
Deine includeten Strings werden sonst als Code ausgeführt... ;-)
9
Lowlevel-Coding / Problem mit Zeitmarke
« am: 19. February 2005, 14:27 »
Und lässt Du uns teilhaben woran es lag? ;-)
10
Offtopic / download rawrite (Linux)
« am: 19. February 2005, 14:20 »
Okay, mein Fehler!
Ich hätte erwähnen sollen das RawWrite für nur Windows ist.
11
Offtopic / download rawrite (Linux)
« am: 19. February 2005, 14:06 »
Doch!
Ich bin grad hingesurft und habs gesehen.
Mußt natürlich durchlesen was da steht und entsprechend die links anklicken!  :lol:
12
Offtopic / download rawrite (Linux)
« am: 19. February 2005, 13:54 »
z.B. hier:

http://uranus.it.swin.edu.au/~jn/linux/


Aber es dürfte auch auf fast jeder Linux-Distribution-CD drauf sein.
13
Offtopic / Problem in ASM
« am: 19. February 2005, 13:12 »
Klaro geht das.
Für NASM kann ich Dir die Syntax sogar sagen:

%include "include-me.asm"

Bei anderen Assemblern müsste es ähnlich gehen.
14
Lowlevel-Coding / Festplattenpartionierung und -bootsektoren
« am: 18. February 2005, 21:26 »
Nein, nein, nein Leute.... :-)

Also um es einfacher zu machen lassen wir mal die erweiterten Partitionen weg für den Moment. So, dann gibt es nur noch primäre Partitionen.

Wir haben also eine Partitionstabelle in die 4 (primäre) Partitionen eingetragen werden können.
Nehmen wir an es sind auch tatsächlich 4 Partitionen vorhanden (es kann auch sein das einer oder mehrere Einträge in der Table leer sind, dann gibt es eben nur 3, 2 oder 1 Partition), und jede Partition hat ein anderes OS.

So weit so gut!

Das Bootprogramm im MBR (erinnert Euch: MBR=MasterBootRecord, also erster phys. Sector der Platte) muss aber beim Start nun wissen welchen Bootsector welcher Partition es nun laden soll... klar? Also? Welchen? :-)

EBEN! Das Bootprogramm weiß es nicht! Also, aus, vorbei, booten ist zu Ende, PC läuft nicht!
...Doch halt, es gibt einen Trick: Man markiert einfach die Partition die geootet werden soll. Also, gesagt, getan: Jeder Partitionseintrag hat im ersten Byte eine 00h. So, jetzt markieren wir die Partition die gebootet werden soll mit 80h. Und schon weiss das Bootprogramm welchen Bootsector es laden und starten muß.

Also das Bootprogramm im MBR macht (grob) folgendes:
- Partituions-Tabelle nach einer Partition durchsuchen die als Boot-Partition markiert ist (man sagt auch dies ist die aktive Partition)
- Bootsector dieser Partition laden und starten.


Und nun zu
Zitat
soweit ich weiß deaktiviert windows aber alle für ihn unbekannten partitionen bei der installation, d.h. es dürfte etwas damit zu tun haben ob ein system mit ihnen etwas anfangen kann oder nicht


Nein, nicht so ganz.
Windows sorgt nur dafür (wenn ich mal alles was mit Bootmanager zusammenhängt außer acht lasse) das es selber auf der aktiven Partition steht damit es beim Start gebootet wird. Also markiert es die eigene Partition als "aktiv" (80h), und da es nur eine aktive Partition geben kann (sonst würde das MBR-Programm ja wieder vor dem gleichen oben genannten Problem stehen), deaktiviert Windows natürlich die bis zu diesem Zeitpunkt aktive Partition.

Hmmm.. ich hoffe ich hab das einigermassen rüber gebracht.
Haut mich wenn ich was vergessen hab! :lol:

Gruß BigOlly
15
Lowlevel-Coding / Festplattenpartionierung und -bootsektoren
« am: 18. February 2005, 16:22 »
Hmmm.. aus dem Ärmel kann ich keinen Link schütteln, aber sieh mal in der LowLevel-Linkliste, da ist glaub ich einer dabei auf dessen Seiten was über Partitionen steht.

Was die erweiterten Partitionen angeht:
Erweiterte Partitionen sind sozusagen wie eine separate Festplatte, der erste Sector enthällt wieder eine Partition-Table und teilt die Partition in weitere Partitionen auf.
Einziger Unterschied:
1. es gibt kein Bootprogramm im ersten Sector der Erweiterten (das Bootprogramm ist ja schon geladen) und..
2. darf die Partition-Table der Erweiterten (und hier bin ich mir aber aus dem Kopf heraus nicht ganz sicher) nur max. 1 "primäre" und eine weitere Erweiterte enthalten. (aber diesen Punkt bitte nachprüfen)

:-)
16
Lowlevel-Coding / Festplattenpartionierung und -bootsektoren
« am: 18. February 2005, 15:55 »
Also ich boote mein OS von Festplatte, ich denke ich kann deshalb darüber ein par Worte verlieren. :-)


Also:

Zitat
Soweit ich weiss steht im ersten Sektor von einer Festplatte der Bootsektor (wie bei Disketten halt auch) und eine Partionstabelle von 4 Einträgen (4 oder ? sind dann max. 4 Partionen auf einer Festplatte mglich ?).


Ja, kann man so sagen. Nur nennt man 1. diesen ersten Sector nicht Bootsector sondern MasterBootRecord und 2. steht hier nicht ein Bootcode für das Betribssystem sondern Bootcode der die Partition-Table ausliest und dann den Bootcode des OS läd und startet.
Und: Ja, die Part-Table hat 4 Einträge, mann kann also 4 Partitionen erstellen. Es gibt aber einen Partitions-Typ wo die Partition wiederum eine Partition-Table enthalten kann. Diesen Partitions-Typ nennt man "Erweiterte Partition" wärend alle anderen Typen (korregiert mich wenn ich lüge) Primäre Partitionen sind.


Zitat
Aber die verschiedenen Partionen haben ja auch alle nochmal einen ersten Sektor.
Steht da nochmal ein anderer Bootsektor drin ? z.B. auch noch Dateisysteminformationen ?
oder wie ist da der genaue Aufbau ?


Der Ablauf ist so:
- Das BIOS läd den ersten Sector der Platte (also den MasterBootRecord) in den Speicher und startet diesen (Aber nur wenn die letzten 2 Bytes AA55h sind, klar!)
- Der gestartete Bootcode liest die Partition-Table und sucht nach der ort als "aktiv" eingetragenen Partition.
- Wenn eine aktive Partition gefunden wurde kopiert sich der Bootcode selber von 0:7C00h wo anders hin (meisst 0:7600h wenn ich mich richtig erinnere) und läd dann den ersten Sector nach 0:7C00h und startet diesen.
- Dies ist nun der "richtige" Bootsector des OS auf der aktiven Partition und ab diesem Punkt läuft (fast) alles so wie beim booten von Floppy.


Zitat
und wie funktioniert das, wenn man mehrere Betriebssysteme pararell auf seinem System laufen lassen will ?


Es gibt viele Möglichkeiten, eine ist die:
- Auf jeder Partition liegt ein anderes OS
- Im MBR (MasterBootRecord) steht ein Bootcode der Dich fragt welches System Du booten willst.
- Dann läd dieser "Bootmanager" den ersten Sector der Partition und startet diesen dessen System Du ausgewählt hast.
(also mal ganz simpel geschrieben)


noch Fragen?  :roll:

Gruß BigOlly
17
Offtopic / Buch PC intern
« am: 17. February 2005, 17:17 »
Dann nimm Teil 3. Die 5 nutzt Dir nur wenn Du die CD mit dazu bekommst.

Schneller gehts allerdings hier:
http://www.ctyme.com/intr/int.htm
Der Link steht übrigens in der LowLevel-Linkliste... ;-)
18
Offtopic / Buch PC intern
« am: 17. February 2005, 17:03 »
Ja, ich hab PC-Intern 2 bis 5. Und jedes für 1,-Euro! :-)

Das 2er ist von 1988/89. Allerdings kommst Du auch mit dem Buch schon weit. Alle PC-kompatiblen BIOS-Ints sind z.b. drin, wie Partitionen funzen usw. Alles halt was 1989 schon im PC war.

Ich weiss ja nicht was Du genau suchst, PMode BIOS-Extensions, Assembler usw.  ist z.b. nicht drin, aber auch nicht in den anderen.
Für sowas brauchst Du etwas neueres... z.b. "PC-Hardwarebuch"... aber das ist teurer.


PS:
Ich sag ja, "mit etwas Gedult"...!  Dann bekommst auch das 5er...;-)
19
Offtopic / Buch PC intern
« am: 17. February 2005, 16:47 »
PC-Intern 3:   ISBN 3-89011-591-8
PC-Intern 5:   ISBN 3-8158-1169-4

PC-Intern 5 ist die letzte Ausgabe (von 1995). Bekommst Du nur noch gebraucht z.b. bei eBay.

Ich empfehle aber eher PC-Intern 3 (1992), wenn Du z.b. die BIOS-Interrupts erklärt haben willst. In PC-Intern 5 ist der Teil auf CD ausgelagert (mit einem uralten Viewer-Programm, also nicht pdf). Beim letzten Teil solltest Du also drauf achten das die CD dabei ist.

Am besten ist allerdings man hat beide Teile wie ich.... :-)

PS:
Mit etwas Geduld bekommst Du jedes Buch für 1,- plus Versand bei eBay, ich habe jedenfalls nicht mehr bezahlt.
20
OS-Design / API?
« am: 17. February 2005, 15:44 »
Mann, Mann, Mann... und ich hab mir verkniffen so eine Rechnung zu posten...  ](*,)
Seiten: [1] 2 3 ... 5

Einloggen