home *** CD-ROM | disk | FTP | other *** search
/ ST-Computer Leser 2002 January / STC_CD_01_2002.iso / APP / TOBIG100 / LIESMICH.TXT next >
Text File  |  2000-05-17  |  8KB  |  177 lines

  1.  
  2. TO_BIG V1.00 vom 17.5.2000
  3.  
  4. Dieses Programm manipuliert die Dfree Routine des Betriebssystems. Dies ist nötig auf Systemen
  5. mit Partitionen >2GB (4GB) und Programmen die damit nicht zurechtkommen. Die Ursache dieses 
  6. Problems ist ganz einfach. Dfree gibt 4 ganze Zahlen zurück (32 Bit Integer) um daraus den
  7. Gesammtspeicherplatz einer Partition bzw. den noch freien Speicher zu ermitteln müssen jeweils
  8. 3 dieser 4 Zahlen miteinander multipliziert werden. Macht man dies wiederum mit einem 32Bit-Integer
  9. so kann es passieren, da₧ das Ergebnis da nicht mehr hereinpa₧t (ein sog. Überlauf). Hier gibt es
  10. 2 Varianten:
  11. 1) das Programm benutzt einen Vorzeichenlosen Integer, dann liegt die Grenze bei 4GB
  12. 2) das Programm benutzt einen vorzeichenbehafteten Integer, dann liegt die Grenze bei 2GB
  13. Sind z.B. 7GB frei, so ergibt die o.g. Multiplikation im ersten Fall 3GB, im zweiten -1GB. Wird
  14. dieses Ergebnis jetzt benutzt um festzustellen, ob noch genug Platz auf der Partition für eine
  15. anstehende Kopieraktion vorhanden ist, so schlägt das im 2. Fall sicher fehl. Im ersten Fall 
  16. ist die Gefahr zwar geringer, da das Resultat zumindest immer positiv ist, aber aus 4.0001GB würden 100kB,
  17. und das reicht auch oft nicht.
  18. Lösungsmöglichkeiten:
  19. 1) Den Programmierer darauf aufmerksam machen und auf eine Korrektur warten. Es ist einfach, man 
  20. mu₧
  21. nur einen anderen Datentyp nehmen.
  22. 2) Wenn das Programm nicht mehr weiterentwickelt wird, oder man nicht warten will hat man mit diesem Programm die Möglichkeit die Symptome zu beheben.
  23.  
  24. Methode
  25. -------
  26. Es gibt 2 Hauptgründe Dfree aufzurufen, entweder um die Information anzuzeigen, oder um wie 
  27. oben beschrieben zu wissen, ob genug Platz vorhanden ist. Im ersten Fall bleibt nur eine Korrektur 
  28. des Programms. Im 2. Fall kann man bei 99% der Fälle etwas von au₧en machen. Und zwar, wenn ich
  29. Dfree so manipuliere, da₧ es nie mehr als 2GB zurückgibt. Genau dies macht TO_BIG. Im Falle, das
  30. der Platz angezeigt werden soll gibt es natürlich eine falsche Anzeige. Das ganze mal am Bsp. von 
  31. Kobold (V. 3.51) Kobold zeigt mir mit installiertem TO_BIG an, das auf meiner Partition H 2GB von 
  32. 2GB frei wären und nichts belegt ist. In Wirklichkeit hat die Partition 4GB wovon ~275MB belegt sind.
  33. Aber ohne TO_BIG weigert sich Kobold standhaft etwas auf diese Partition zu kopieren. Da bevorzuge
  34. ich eine falsche Anzeige. Da ich sonst mit Kobold zufrieden bin und es vor allem brauche um
  35. Kopierjobs durchzuführen habe ich ursprünglich TO_BIG geschrieben.
  36. Ich gehe allerdings davon aus, da₧ es in absehbarer Zeit eine neue Version von Kobold geben wird.
  37. Weiterhin weigern wird sich Kobold natürlich wenn ich über 2GB kopieren will, aber mal ehrlich wie 
  38. oft passiert das?
  39. Kobold hatte hier das Pech als Bsp. herangezogen zu werden, nicht weil es besonders schlecht 
  40. ist, sondern eher umgekehrt, weil ich es zu gut fand um es wegen eines so kleinen Fehlers in 
  41. den Mülleimer zu schmei₧en.
  42. Ich vermute, das der überwiegende Teil aller Programme die Dfree benutzen diesen Fehler haben.
  43. Bekannt ist er mir mir in älteren Versionen von CAT (bis 4.14). In der Version 4.15 habe ich es 
  44. behoben. Und in CAB, hier gibt es Probleme mit dem CACHE.
  45.  
  46. Beschreibung des Programms:
  47. ***************************
  48.  
  49. Mode 0
  50. ------
  51. Dfree wird immer korrigiert (auf knapp 2GB)
  52.  
  53. Mode 1
  54. ------
  55. TO_BIG liest eine Liste von Programmen ein und korrigiert Dfree nur bei diesen. Leider ist es im
  56. TOS nirgends vorgesehen, zu fragen wie das aktuelle Programm hei₧t. Eine Methode gibt es aber,
  57. die allerdings nur auf neueren TOS-Varianten läuft. Bei anderen kann also nur Mode 0 verwendet werden.
  58. Da meine Doku hier nicht eindeutig ist kann es sein, da₧ TO_BIG versucht den Programmnamen zu ermitteln
  59. obwohl es nicht geht. Deshalb habe ich einen Testmodus eingefügt. Man könnte jetzt meinen, diesen 
  60. Test könne man doch bei jedem Start durchführen. Doch sollte TO_BIG im Autoordner installierbar sein, 
  61. und dort sind keine AES-Aufrufe möglich, und genau die werden verwendet.
  62.  
  63. Mode 2
  64. ------
  65. wie Mode 1, zusätzlich wird aber ein Logfile geführt, in dem alle Programme aufgelistet werden, 
  66. die Dfree benutzt haben, au₧erdem wird jeweils angegeben ob dieses Programm bekannt ist, also ob es 
  67. korrigiert werden soll.
  68.  
  69. Testmodus
  70. ---------
  71. Ruft man TO_BIG mit dem Parameter -t auf, so wird nur das inf-File analysiert und geprüft ob die
  72. Ermittlung des Programmnamens funktioniert. Letzteres vergleicht den gefundenen Namen mit "TO_BIG  ".
  73. Dies schlägt natürlich fehl wenn man das Programm umbenennt. Für den Normalbetrieb ist der Name
  74. unwichtig.
  75. Da -t derzeit der einzige Parameter ist wird garnicht geprüft ob es wirklich -t ist, sondern jeder
  76. Parameter startet den Test, das kann sich aber ändern.
  77.  
  78. Installation
  79. ************
  80.  
  81. TO_Big.TOS und TO_Big.INF entweder in den Auto Ordner kopieren oder in die Autoexec.BAT ein- 
  82. tragen. Bei Eintragung in Autoexec.BAT gehört das INF-File in das Rootverzeichnis der
  83. Bootpartition, also normalerweise nach C:\. Es kann aber auch per Hand gestartet werden. Wird 
  84. es gestartet wenn es bereits installiert war, so deinstalliert es sich. In beiden Fällen wird 
  85. eine Meldung ausgegeben, beim Deinstallieren wird au₧erdem auf einen Tastendruck gewartet. 
  86. Darauf habe ich beim Installieren verzichtet um den Ablauf im Autoordner nicht zu behindern.
  87.  
  88. TO_Big.inf mit einem Editor editieren. Ein Bsp. File ist beigefügt
  89. Ein Kommentar beginnt mit ';' und wird ignoriert.
  90. Von den Schlüsselwörtern (Mode, Logfile und Programme) wird nur der 1. Buchstabe geprüft
  91. (Gro₧-/Kleinschreibung wird ignoriert), Ob man also: 
  92. mode=1
  93. oder
  94. Methode=1
  95. oder M=1
  96. schreibt ist gleich.
  97. Zwischen den verschiedenen Teilen mu₧ ein (oder mehrere) Trennzeichen sein, dies kann eine 
  98. Leerstelle, ein Tabulator oder das '=' Zeichen sein. Gültig ist also z.B.:
  99. Mode=1
  100. Mode 1
  101. Mode        1
  102. aber nicht 
  103. Mode1
  104. Mode:1
  105. Schreibt man einen Kommentar ans Zeilenende, so mu₧ also auch vor dem ';' ein Trennzeichen 
  106. sein, also:
  107. Logfile g:\to_big.log ;das Logfile
  108. und nicht
  109. Logfile g:\to_big.log;das Logfile
  110. Nach dem Vorgeplänkel jetzt zu den einzelnen Einträgen
  111.  
  112. 1) Mode
  113.  
  114. kann zu 0,1 oder 2 gesetzt werden (s.o.)
  115. Bsp.:
  116. Mode=1
  117. Dfree wird nur bei den unten angegebenen Programmen korrigiert
  118.  
  119. 2) Logfile
  120.  
  121. Für Mode=2 wird ein Logfile benötigt, ist keines angegeben wird C:\to_big.LOG benutzt.
  122. Bsp.:
  123. Logfile=G:\TMP\to_big.LOG
  124. Falls Mode=2 wird das Logfile in G:\TMP\to_big.LOG geführt
  125.  
  126. 3) Programme
  127.  
  128. Ab diesem Schlüsselwort wird alles als Liste von Programmen interpretiert, bei denen Dfree
  129. korrigiert werden soll.
  130. Bsp.:
  131.  
  132. Programme:
  133. C:\KOBOLD_3.ACC
  134. KOBOLD_3
  135.  
  136. Benutzt wird im Endeffekt nur der eigentliche Name des Programms, also z.B. KOBOLD_3, ohne 
  137. Pfad und ohne Endung. Und au₧erdem auf 8 Zeichen gekürzt. Dies ist im Betriebssystem begründet.
  138. Gibt man hier den kompletten Pfad an wird er entsprechend gekürzt.
  139. Die Punkte 1-2 können in beliebiger Reihenfolge aufgeführt sein, aber nach Programme wird kein 
  140. Schlüsselwort mehr gesucht. Nur Kommentare sind noch erlaubt. 
  141.  
  142. TO_BIG einmal im Testmodus starten s.o.. Ggf kann nur Modus 0 benutzt werden. Dieser Test mu₧ unter
  143. jedem Betriebssystem wiederholt werden unter dem man TO_BIG benutzen will.
  144. Es sollte unter MagiC und Multitos in allen Modi funktionieren.
  145.  
  146. Programmtechnisches
  147. *******************
  148.  
  149. Das Programm verbiegt den Gemdos Vektor. Es benutzt den XBRA Standard mit der ID 'DYJT'.
  150.  
  151.  
  152. Rechtliches
  153. ***********
  154.  
  155. Das Programm ist Fairware, d.h. es kann beliebig benutzt und weitergegeben werden. Es kann auch 
  156.  
  157. in PD Sammlungen aufgenommen werden oder kommerziellen Programmen beigefügt werden. Wer es re- 
  158. gelmä₧ig benutzt sollte sich allerdings überlegen ob es ihm nicht ein paar Mark wert ist. Er 
  159. bekommt dann auch Bescheid, wenn es eine neue Version gibt (per Email).
  160.  
  161. Kobold, MagiC und Cab sind Warenzeichen von Application Systems Heidelberg.
  162.  
  163. Autor
  164. *****
  165.  
  166. Dimitri Junker
  167. Adenauerallee 30
  168. 52066 Aachen
  169. BRD
  170.  
  171. Email:
  172. Dimitri.Junker@Popmail.Oche.de
  173.  
  174. Bankverbindung
  175.  
  176. Konto Nr.: 24006074
  177. bei der Sparkasse Aachen BLZ: 390 500 00