Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Apple>Arbeitsspeicher zuweisen

Arbeitsspeicher zuweisen

Gorch Fock11.07.1312:50
Bei den antiken Apple-Betriebssystemen gab es die Möglichkeit, im Info-Fenster einem Programm Arbeitsspeicher manuell zuzuweisen (Minimum, Maximum).
Gibt es da unter OSX vielleicht eine - verborgene - vergleichbare Funktion? Ich habe nämlich den Eindruck bei einigen Programmen, die eine entspr. Statusleiste haben (z.B. TechTool), dass die Prozessoren bei weitem nicht ausgelastet scheinen und alles unnötig lange dauert...
Bin neugierig.
0

Kommentare

jsh11.07.1314:33
Mir ist unklar, wie ein Programm mit weniger Arbeitsspeicher auskommen soll. Was soll denn passieren, wenn es weiteren (mehr als das gesetzte Maximum) Arbeitsspeicher benötigt? Soll es abstürzen?
Was für eine Statusleiste meinst du? Was wird dort angezeigt? Und was hat die Auslastung von Prozessoren direkt mit dem zugewiesenen Arbeitsspeicher von einem Programm zu tun?

Ein konkretes Beispiel würde wohl mehr Klarheit in deine Frage bringen.
0
SpaceHotte11.07.1315:28
Diese Art von Speicherverwaltung aus Zeiten vor 10.0 gibt es nicht mehr. Zum einen ist es nicht zeitgemaess und wie bereits beschrieben, Quelle moeglicher Fehler wenn der zugewiesene Speicherbereich nicht ausreicht.

Dadurch dass unter OS X jedes Programm sozusagen einen vollstaendigen 64-bit Speicheradressraum (virtuell) zugewiesen bekommt und den dann verwalten kann wie es will, nehmen sich Programme von allein so viel Speicher wie sie benoetigen (sind sie schlecht geschrieben/optimiert sogar manchmal zu viel).
0
Gorch Fock12.07.1314:41
jsh
Augenscheinlich kennst Du die OS vor X nicht.
Es gab 3 Kategorien: (a) vom Programmhersteller empfohlener Arbeitsspeicher (b) einzugebendes Minimum (im Falle dass man weniger RAM hatte; dabei die Möglichkeit, dass dies dann zu wenig wurde...) (c) einzugebendes Maximum (in Abhängigkeit vom zur Verfügung stehenden RAM; gesetztes Maximum gab es nicht)
Wenn Du z.B. TechTool kennst: Am unteren Fensterrand gibt es Statusleisten, in denen die Prozessorauslastung bei best. Arbeitsschritten angezeigt wird. Wenn der Balken in einer 10 cm breiten Leiste nur 1-2 cm anzeigt, heißt das m.W. eine Unterforderung - daher meine Frage nach höherer Zuweisung à la OS 7 usw.
Nun kapiert?
0
roca12312.07.1315:01
geht nicht und braucht man nicht.
0
Danger12.07.1315:08
Gorch Fock

Ja, ich erinnere mich, das war cool. Bei Photoshop lohnte sich das damals richtig.

Nein, unter OS X gibt's Derartiges nicht.
0
Klaus Major12.07.1315:09
Yo, lass das alles mal ruhig den Unix Unterbau von OS X machen, besser geht's nicht
0
torfdin12.07.1315:13
Als Betriebssystem auf Basis der UNIX-Funktionsweise fragen bei Mac OS X die Programme das Betriebssystem um Arbeitsspeicher. Das Betriebssystem gibt dann den Programmen den Arbeitsspeicher.
Wird mehr RAM von einem Programm erfordert als echter RAM vorhanden, dann lagert das Betriebssystem Arbeitspeicher aus (virtueller Speicher).
Deshalb ist es auch keine gute Idee, bei einem Unix-Betriebssystem den virtuellen Speicher aus zu schalten.
Das Betriebssystem kann die Speicherzuweisung während der Laufzeit der Programme dynamisch anpassen.
Versucht sich ein Programm mehr Speicher zu nehmen, ohne das Betriebssystem zu fragen, beendet das Betriebssystem das Programm. (eines der Features von Speicherschutz).

Das Alles (wie übrigens die manuelle Zuweisung bei System 7, Mac OS 8 und 9) garantiert keine effiziente Nutzung des verwendeten RAMs oder CPU-Leistung.
Eine solche effiziente Nutzung wird durch die Umsetzung der Arbeitsschritte des Programms in Programmcode gewährleistet. (Verteilen der einzelnen Tasks auf Rechenkerne, sparsames Haushalten mit RAM, entfernen unnötiger Inhalte aus dem RAM).

Die Software-Entwicklung hinkt noch immer den Möglichkeiten der Hardware hinterher, nutzt also oftmals nicht alle Funktionen der Hardware. Das geschieht meist aus Kompatibilitätsgründen und massivem Entwicklungsaufwand.
„immer locker bleiben - sag' ich, immer locker bleiben [Fanta 4]“
0
cubecube12.07.1315:27
torfdin
Das geschieht meist aus Kompatibilitätsgründen und massivem Entwicklungsaufwand.
Apple versucht aber auch, es denn Entwicklern einfacher zu machen. Das vor zwei Jahren eingeführte automatic reference counting geht doch einen Schritt in einfachere und effiziente Speicherverwaltung. (Zumindest soweit ich das verstehe)
0
_mäuschen
_mäuschen12.07.1318:00
nice -- execute a utility with an altered scheduling priority

BUGS
nice is built into csh(1) with a slightly different syntax than described
here. The form `nice +10' nices to positive nice, and `nice -10' can be
used by the super-user to give a process more of the processor.

so use renice
0
torfdin12.07.1318:26
cubecube
...
Apple versucht aber auch, es denn Entwicklern einfacher zu machen. Das vor zwei Jahren eingeführte automatic reference counting geht doch einen Schritt in einfachere und effiziente Speicherverwaltung. (Zumindest soweit ich das verstehe)
Ja, natürlich! Auch Intel beschreibt in seiner Dev-Doku wie man effizienter die Hardware-Routinen anspricht und Apple bietet mit XCode und den mit gelieferten Tools gute Möglichkeiten die Software zu optimieren.
Bei von Grund auf neuen Programmen ist das ein relativ akzeptabler Aufwand, dennoch stellen gerade Portierungen von alten Versionen von Programmen (solchen "Urgesteinen" wie Techtool) zu einer neuen Version für neue Betriebssystem-Versionen massiven Aufwand dar, weil je nach Grundkonzept erhebliche Programmteile um- oder neu geschrieben werden müssen.
Deshalb ist in den letzten Jahren TechTool nicht durch schnelle Programm-Aktualisierungen aufgefallen.
(auch aus anderen Gründen mag ich TechTool Pro nicht [mehr] und ärgere mich jedes mal über das ausgegebene Geld, wenn ich die Schachtel sehe )
„immer locker bleiben - sag' ich, immer locker bleiben [Fanta 4]“
0
torfdin12.07.1318:40
_mäuschen
nice -- execute a utility with an altered scheduling priority

BUGS
nice is built into csh(1) with a slightly different syntax than described
here. The form `nice +10' nices to positive nice, and `nice -10' can be
used by the super-user to give a process more of the processor.

so use renice
hier mal ein paar ... z.T. drollige ... Links dazu:
bei MacTechNews:


ändern der Prozess-Priorität über das Terminal:


und von jemandem, der mir irgendwie bekannt vorkommt ...


Das waren die ersten Treffer bei einer Google-Suche nach Prozess-Priorität.

Das geht aber nicht in die Richtung, wie Gorch Fock meinte. Weil es eben die Zuteilung des Prozessor(en)-Leistungsanteils für einen Prozess (Programm) an der verfügbaren Prozessor(en)-Gesamtleistung steuert, nicht jedoch den zu nutzenden RAM.
„immer locker bleiben - sag' ich, immer locker bleiben [Fanta 4]“
0
Gorch Fock12.07.1320:47
mäuschen
Thx, aber das würde ich nicht einmal auf deutsch verstehen...
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.