ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > filerequester task | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
1 2 -3- | [ - Beitrag schreiben - ] |
30.12.2011, 20:20 Uhr AGSzabo Posts: 1663 Nutzer |
@thomas: Ich weiß jetzt nicht worauf du dich da bei mir beziehst. Mit dem SIGBREAKF_CTRL_F funktioniert es ja auch ohne Forbid. Es friert blos auch ohne das forbid ein. Meinst du es würde nimmer einfrieren wenn ich Ports und Messages verwende? Ist das für diesen einen Pointer nicht zu viel des Guten? ps: neuere Studien ergeben, dass das Einfrieren garnicht bei CreateNewPRoc(), sondern in Examine() passiert sein könnte. Muss ich meinem Prozess für CreateNewProc() noch etwas mitgeben, das ich verpasst habe? code:.proctags dc.l NP_Entry,scandir_process dc.l NP_Name,.procname dc.l NP_StackSize,8000 dc.l NP_ExitCode,.process_exit dc.l TAG_END -- Author of Open eXternal User Interfaces - Sam mini os4.1 upd. 2 / e-uae 39bb2 / A4000D 3.0 & 3.9 2mbchip 8mbfast Ariadne_II ide DVD und HD / A500 3.1 (mkick) adide 50mb / Athlon ii X2 Ubuntu Linux [ Dieser Beitrag wurde von AGSzabo am 30.12.2011 um 20:34 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
01.01.2012, 18:10 Uhr AGSzabo Posts: 1663 Nutzer |
Hier mal so zwischendurch der Stand der Dinge in Sachen Filerequester: Bild: http://images.quicktunnels.net/oxfilereq.png -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 11:36 Uhr Holger Posts: 8116 Nutzer |
Zitat:Wenn es eine Möglichkeit gibt, Forbid() zu vermeiden, sollte man diese auch nutzen. Die Lösung lautet: Das sollte Dir übrigens bekannt vorkommen. Genau so teilt die Workbench jedem Programm mit, welche Icons beim Start geöffnet waren. -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 11:40 Uhr Holger Posts: 8116 Nutzer |
Zitat:und dann wunderst Du Dich, dass es langsam ist? -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 12:00 Uhr AGSzabo Posts: 1663 Nutzer |
@Holger: > und dann wunderst Du Dich, dass es langsam ist? ist es nimmer. der flaschenhals war das sortieren, das jetzt durch alfabetisches adden ersetzt wurde. > Das sollte Dir übrigens bekannt vorkommen. Genau so teilt die Workbench jedem Programm mit, welche Icons beim Start geöffnet waren. Ja, daran habe ich auch oft gedacht. Naja, jetzt funktioniert es anscheinend mit SIGF_BREAK_CTRL_F oder so, wie im Beispielsource. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 12:10 Uhr Holger Posts: 8116 Nutzer |
Zitat:Es ist jetzt kein Flaschenhals, solange der Datenträger vergleichsweise langsam ist. Bzw. fehlt Dir einfach nur der Vergleichswert dafür, wie schnell es sein könnte. Jedenfalls ist Dein Task mit Layoutberechnung beschäftigt, wenn eigentlich schon neune Daten gelesen werden könnten. -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 12:16 Uhr AGSzabo Posts: 1663 Nutzer |
@Holger: > Jedenfalls ist Dein Task mit Layoutberechnung beschäftigt, wenn eigentlich schon neune Daten gelesen werden könnten. Ist es denn von Bedeutung welcher Task das Layout macht? Ich meine, wenn es der main task machen würde, könnte wäherenddessen der read task auch nicht weiter einlesen? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 12:30 Uhr Holger Posts: 8116 Nutzer |
Zitat:Die Datenübertragung erfolgt im Idealfall auf unterster Ebene via DMA. Aber nur, wenn man dam System eine Chance dazu gibt. Dazu muss das Programm dem System auch mitgeteilt haben, dass es etwas tun soll. D.h. direkt nachdem der Lesetask einen Eintrag erhalten hat (dann ist er auch aktiv), fordert er den nächsten an. Danach berechnet der GUI-Task das Layout, während das Laufwerk Daten zum Controller schaufelt. Wenn man die nächste Leseanfrage erst stellt, nachdem man das Layout berechnet hat, muss das Laufwerk Däumchen drehen. -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 12:37 Uhr AGSzabo Posts: 1663 Nutzer |
@Holger: Zwei Zeilen geändert und schwupp erledigt der gui task das layout selber. Hat sich aber nix geändert. Liegt vielleicht daran, dass es der uae ist? Übrigens geht mein Einlesen im Emulator sehr viel viel schneller als das selbe directory direkt unter linux. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ - Antworten - Zitieren - Direktlink - ] |
03.01.2012, 19:31 Uhr Holger Posts: 8116 Nutzer |
@AGSzabo: Es gibt eine Menge Faktoren, die da eine Rolle spielen. In Deinen Setup werden in den meisten Fällen Daten aus einem Cache unter Verwendung der CPU kopiert, d.h. es geht ziemlich schnell und kann gleichzeitig nicht mehr durch asynchrone Abarbeitung beschleunigt werden. Native Linux-Programme sind da direkter, was nicht unbedingt immer vorteilhaft sein muss. Vor allem bot die Architektur bis vor kurzem keinerlei Anreize, anwendungsseitig asynchrone I/O zu verwenden. Darauf sollte man aber seine Amiga-Software nicht ausrichten. -- Good coders do not comment. What was hard to write should be hard to read too. [ - Antworten - Zitieren - Direktlink - ] |
1 2 -3- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > filerequester task | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |