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 - Martin Erhardt

Seiten: 1 ... 6 7 [8] 9
141
tyndur / Re: Version 2.2 unter BOCHS
« am: 10. August 2012, 15:11 »
Hey benutzt du bochs auf android ... cool.
Kann sein das bochs for Android portierung bissl anders ist test's mal aufm PC. Probiers mal auf dem Pc
142
OS-Design / Re: rudimentärer Tastaturtreiber geht nicht
« am: 13. July 2012, 17:36 »
Ich weiß es nicht genau aber mein Buildskript startet auch Qemu und es könnte sein,dass im Skript für das tutorial andere Qemu parameter verwendet wurden. Anders kann Ich mir nicht erklären wie es auf MNemo′s Maschine funktionieren kann.
143
OS-Design / Re: rudimentärer Tastaturtreiber geht nicht
« am: 13. July 2012, 14:37 »
Hurra Problem gelöst :-D
Ich habe einen alten Programmier Trick angewandt.
Nehme ein ähnliches Projekt deiner Wahl(tut 5) und ersetze den Quellcode schrittweise bis nur noch deiner da ist und wenn du Glück hast funktionierts.
Danke für die Hilfe!
144
OS-Design / Re: rudimentärer Tastaturtreiber geht nicht
« am: 13. July 2012, 10:38 »
Der Wert des Statusregisters( mit kprintf("StatusRegister:%d", inb(0x64) ); ) gelesen ist nach und vor der Aktivierung 0x1c, also ganz normal.
Trotzdem erfahre ich mit (kprintf("Ausgabepuffer:%d", inb(0x60) ), dass auch nach dem Bestätigungs IRQ noch 0xfa im Puffer ist.
Wenn Ich versuche ihn im Handler gewaltsam mit outb(0x60, 0x00);zu leeren wird immer wieder der Bestätigungs IRQ ausgelöst wird:
Ja ein EOI SOLLTE zumindest gesendet werden wie man hier sieht:
void handle_irq(struct cpu_state* cpu)
{
kprintf("Interrupt: %d\n", cpu->intr);
if (cpu->intr >= 0x28) {
            // EOI an Slave-PIC
            outb(0xa0, 0x20);
}else if(cpu->intr==0x21){on_key_event(0x21);}
// EOI an Master-PIC
outb(0x20, 0x20);
}
145
Apropos Qemu Debuging und "Trying to execute code outside RAM or ROM"Absturz könnte dir vielleicht dieser Link helfen:
http://forum.lowlevel.eu/index.php?topic=3038.msg35433#msg35433
146
Offtopic / Re: Welchen Desktop benutzt ihr?
« am: 12. July 2012, 20:12 »
Traut euch abzustimmen! :-)
51 Leute haben diesen Thread gesehen und nur 8 haben abgestimmt.
147
Offtopic / Re: Welchen Desktop benutzt ihr?
« am: 12. July 2012, 14:18 »
So macht man das :mrgreen:
148
OS-Design / Re: rudimentärer Tastaturtreiber geht nicht
« am: 12. July 2012, 14:10 »
Seltsam, bei meine iso geht sowohl in virtual box als auch QEMU nicht.
Oder irgendwasanderes anderes z.b im PIC stimmt nicht. Also im tut kernel 5 funktioniert der Kernel
149
Offtopic / Re: Welchen Desktop benutzt ihr?
« am: 12. July 2012, 14:02 »
Also Ich bin absoluter Gnome 3 Fan.
Vielleicht weil die viel bemängelten großen Schriften auf meinem großen Display eher vorteihaft sind.
Hier ein Screenshot
https://plus.google.com/117401686315728444857/posts
150
OS-Design / Re: rudimentärer Tastaturtreiber geht nicht
« am: 12. July 2012, 13:50 »
@taljeth Ja Ich bekome FA(dec: 250) mit inb(0x60) aber es kommt trotzdem kein IRQ mehr.
@MNemo asm volatile ("int $0x21") habe ich nur gemacht um zu testen ob man noch IRQs softwareseitig auslösen kann
Das vorgeschlagene if verstehe ich nicht:
if(intr != 0x20){
kprintf("Interrupt: %d\n", cpu->intr);
if (cpu->intr >= 0x28) {
            // EOI an Slave-PIC
     outb(0xa0, 0x20);
}else if(cpu->intr==0x21){on_key_event(0x21);}
// EOI an Master-PIC
outb(0x20, 0x20);
}
Trotzdem Danke
151
Offtopic / Welchen Desktop benutzt ihr?
« am: 12. July 2012, 13:28 »
Frage an alle Linuxer(und FreeBSDler :-))
Was ist euer Favorite Desktop?
solche Umfragen wurden schon oft gemacht, aber ich wollte nur wissen ob man hier genauso denkt wie in anderen foren
152
OS-Design / rudimentärer Tastaturtreiber geht nicht
« am: 12. July 2012, 12:32 »
Guten Morgen,
Sofort nach dem aktivieren der Tastatur mit "outb(0x60,  0xF4);" wird ein Tastatur IRQ ausgelöst. Danach gehen Interrupts nicht mehr.
Wenn man Interrupts erst nach der Aktivierung anschaltet. Wird nach asm volatile("sti") sofort ein Tastatur IRQ ausgelöst.
Ich glaube eher nicht das es ein Spurious Interrupt ist, weil:
1. Ich den selben Treiber auf tut kernel 5 erfolgreich zum laufen gebracht habe
2. Es unwahrscheinlich ist das immer ein Spurious Interrupt ausgelöst wird
Mein kernel erkennt aber keine Spurious Interrupts
Qemu.log(In der der Inhalt des ISR Registers leider nicht verzeichnet ist):
SMM: enter
EAX=00000001 EBX=17fe12b0 ECX=02000000 EDX=00000cfc
ESI=000f321d EDI=0003802d EBP=17fe10d0 ESP=00006f08
EIP=000f384b EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
CS =0008 00000000 ffffffff 00cf9b00 DPL=0 CS32 [-RA]
SS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
DS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
FS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
GS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
LDT=0000 00000000 0000ffff 00008200 DPL=0 LDT
TR =0000 00000000 0000ffff 00008b00 DPL=0 TSS32-busy
GDT=     000fd3a8 00000037
IDT=     000fd3e6 00000000
CR0=00000011 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
CCS=000f31f0 CCD=00000001 CCO=LOGICB 
EFER=0000000000000000
SMM: after RSM
EAX=00000001 EBX=17fe12b0 ECX=02000000 EDX=00000cfc
ESI=000f321d EDI=0003802d EBP=17fe10d0 ESP=00006f08
EIP=000f384b EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0010 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
CS =0008 00000000 ffffffff 00c09b00 DPL=0 CS32 [-RA]
SS =0010 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
DS =0010 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
FS =0010 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
GS =0010 00000000 ffffffff 00c09300 DPL=0 DS   [-WA]
LDT=0000 00000000 0000ffff 00008200 DPL=0 LDT
TR =0000 00000000 0000ffff 00008b00 DPL=0 TSS32-busy
GDT=     000fd3a8 00000037
IDT=     000fd3e6 00000000
CR0=00000011 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
CCS=00000000 CCD=00000000 CCO=EFLAGS 
EFER=0000000000000000
     0: v=21 e=0000 i=0 cpl=0 IP=0008:0000000000100357 pc=0000000000100357 SP=0010:0000000000104f80 EAX=00000000000000f4
EAX=000000f4 EBX=00036d04 ECX=000b8000 EDX=00000060
ESI=0005d987 EDI=0005d976 EBP=00104fa8 ESP=00104f80
EIP=00100357 EFL=00000202 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
CS =0008 00000000 ffffffff 00cf9a00 DPL=0 CS32 [-R-]
SS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
DS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
FS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
GS =0010 00000000 ffffffff 00cf9300 DPL=0 DS   [-WA]
LDT=0000 00000000 0000ffff 00008200 DPL=0 LDT
TR =0000 00000000 0000ffff 00008b00 DPL=0 TSS32-busy
GDT=     00105020 00000027
IDT=     00105060 000007ff
CR0=00000011 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
CCS=00000008 CCD=00104f70 CCO=SUBL   
EFER=0000000000000000
Im Anhang ist mein OS Quellcode.
153
Das Wiki / Re: Page Fault im Paging tutorial kernel
« am: 11. July 2012, 08:52 »
Stimmt, Ich habe mir tut 9 noch nicht so genau angesehen
154
Das Wiki / Page Fault im Paging tutorial kernel
« am: 10. July 2012, 22:11 »
Guten Abend,
Wenn Ich den Paging tutorial kernelstarte gibt es auf allen Emulatoren sofort einen Page Fault
Ist das normal?
155
Offtopic / Android ROMs
« am: 10. July 2012, 21:44 »
Nun ja aber es gibt da ein paar User die rooten ihr Gerät und können dann Aftermarket-Firmware-Distribution wie CyanogenMod aufspielen(mit Tools wie einem bootmenu etc.Es gibt hierzu zwar ziemlich viel Dokumentation aber von schlechter Qualität. Auf XDA-Developers dem Hauptforum zum Thema bekommt man immer wieder haarsträubende Dinge zu hören, weil die meisten Leute dort nur 08/15 User sind die eben mal einen Artikel gelesen haben.  Ich habe damit nicht allzu gute Erfahrungen gemacht :wink:)

Bei CyanogenMod handelt es sich annscheinend um ein Betriebssystem mit Kernel.
Das lässt Wikipedia indirekt verlauten:
"CyanogenMod war auch das erste Betriebssystem für Mobilgeräte, das für die Prozessverwaltung den Brain Fuck Scheduler (BFS) einsetzt – eine Änderung, die in experimentelle Zweige des offiziellen Android-Codebaums übernommen wurde."(§2)
Der Scheduler gehört schließlich zum kernel.

ACHTUNG:
Lange Rede kurzer Sinn: Ich vermute das man mit diesen Tools auch seinen eigenen Kernel auf das Gerät spielen könnte.

PS: Echt viel los heute im Forum
156
OS-Design / Re: Scheduling mit "Prioritätswarteschlangen"
« am: 10. July 2012, 21:27 »
Ich finde sie nicht :-(
157
Das Wiki / Re: kann mich nicht im Wiki anmelden
« am: 10. July 2012, 21:09 »
Danke!
158
Das Wiki / kann mich nicht im Wiki anmelden
« am: 10. July 2012, 19:41 »
Guten Abend,
Sobald Ich mich im Wiki anmelden will kommt:
Fehler bei der Anmeldung
Der Benutzername „Martin Erhardt“ existiert nicht. Überprüfe die Schreibweise (Groß-/Kleinschreibung beachten) oder melde dich als neuer Benutzer an.
,obwohl ich Cookies anhabe.
Oder muss ich noch ein Wiki Konto erstellen
159
OS-Design / Scheduling mit "Prioritätswarteschlangen"
« am: 10. July 2012, 19:26 »
Guten Abend,
In http://www.lowlevel.eu/wiki/Scheduler#Round_Robin steht:
"Der Vorteil dieses Systems ist, dass jedem Prozess, bei einer entsprechenden Implementierung, individuell der optimale Teil der Rechenleistung zugeteilt wird. Nachteil ist allerdings, dass diese Variante nur in Verbindung mit anderen Varianten zur Optimierung eingesetzt werden kann"  ...    ,die wären?
Wieso kann  man Prioritätswarteschlangen nicht einfach in einen round Robin Scheduler hineinimplementieren?
160
Ich bekomme den Exception auch nicht mehr mit dem parameter -no-kvm-irqchip. Offenbar ist das Problem lediglich, dass qemu diesen irq chip simuliert. Der bei dir anscheinend standardmäßig von qemu emuliert wird.
Seiten: 1 ... 6 7 [8] 9

Einloggen