Hallo,
und zwar habe ich folgendes Problem:
Wenn ich in meinem Betriebssystem beispielsweise größere Dateien von CD in den Speicher lade (BMP->Hintergrundbild), kommt es immer zu ungewöhnlichen Problemen. So kann es sein, dass plötzliche der Maus/Tasterturtreiber nich mehr funktioniert, oder keine weiteren Datein von CD geladen werden können, da der Treiber nicht mehr funktioniert.
Die Vorgehensweise ist wie folgt:
In meinem Betriebssystem verwende ich Paging. Dabei befindet sich das Pagedirectory auf Speicherstelle 0x400000 und die Pagetable auf 0x401000
Der Heap startet ab 0x801000. Bevor ich eine Datei lade allociere ich den benötigten Speicher ( unsigned int *temp = (unsigned int*)malloc( 0x1000 )
Der CD-Romtreiber lädt dabei beispielsweise eine Grafik auf die Adresse von "temp". Meistens kann die Datei vollständig geladen werden und auch erfolgreich angezeigt werden. Jedoch spielen nach dem Dateiladen wie bereits erwähnt, sämtliche Treiber (Maus/Tastatur, ATAPI, ...) verückt bzw. funktionieren nicht mehr (richtig).
Hat jemand von euch eine Idee woran das liegen könnte? Wird etwa ein wichtiger Speicherbereich überschrieben?
MFG
Hunter