Handbuch zur dynamischen Ablaufverfolgung in Solaris

copyinstr()

string copyinstr(uintptr_t Adr)

copyinstr() kopiert eine auf Null endende C-Zeichenkette von der angegebenen Benutzeradresse in einen Scratch-Puffer von DTrace und gibt die Adresse dieses Puffers zurück. Die Benutzeradresse wird als eine Adresse im Bereich des Prozesses interpretiert, zu dem der aktuelle Thread gehört. Die Länge der Zeichenkette ist auf den mit der Option strsize festgelegten Wert beschränkt. Näheres hierzu siehe Kapitel 16Optionen und Tunables . Wie auch bei copyin muss die angegebene Adresse mit einer durch Seitenfehler eingelagerten Seite im aktuellen Prozess übereinstimmen. Ist dies nicht der Fall oder ist nur unzureichender Scratch-Platz verfügbar, wird NULL zurückgegeben und ein Fehler generiert. Informationen zu Verfahren, mit denen das Auftreten von Kapitel 33Ablaufverfolgung von Benutzerprozessen-Fehlern vermindert wird, finden Sie in Chapter 33, User Process Tracing.