Mehr Systemfunktionen

tigerstyle

tigerstyle

Aktives Mitglied
Thread Starter
Dabei seit
29.11.2004
Beiträge
398
Reaktionspunkte
2
Hi Leute,

an der Uni machen wir gerade Systemprogrammierung. Die anderen müssen entweder an den lahmen Linuxterminals oder über VM-Ware Linux laufen lassen. Ich kann ja die (meisten) Unix-Systemfunktionen easy mit der Kosonle aufrufen. Z.B: diese Funktionen zur Systemkontrolle:

- ps / top
- kill
- ipcs
- ipcrm
- lsof
- strace

Aber leider funktionieren bir mir nicht alle wie unter Linux.
Kann man die irgendwie nachträglich installieren?
Ich hab da mal unter Applications unter Installers einpaar xcode-tools installiert. Seitdem kann ich wenigstens mit gcc ... c-Files complieren.
Was kann ich noch machen?

Danke schonmal.
 
Linux hat meistens das GNU-Userland (also die Programme um den Kernel), Mac OS X hat das BSD-Userland. Du musst also die GNU-Tools (weiss den richtigen Namen jetzt nicht) installieren, dann geht das alles bei dir auch :)
 
Kannst Du mir sagen, wo ich das herbekommen kann. Bei den Xcode-Tools kann ichs leider nicht finden. Auf der Apple-Homepage auch nicht.
 
versuchs doch ma bei Versiontracker
 
Kann dort leider auch nix finden :-(
 
in wie fern funktionieren die nicht wie unter linux?
wegen den kommandozeilen parametern?
auf BSD und anderen SysV unixen benutzt man halt ps aux statt ps elf wie bei linux.
wobei das gnu ps unter linux auch aux als parameter nimmt...

ich dachte die bringen euch da unix bei und nicht linux ;)
dann sollten die auch mal auf verschiedene varianten eingehen...
bzw euch als erstes mal mit "man" vertraut machen
 
elninio schrieb:
Dann geht auf deinem Mac auch ein "abt-get install package"

aPt-get

aber vorher nicht das "apt-get update" vergessen ;)
 
in wie fern funktionieren die nicht wie unter linux?
Ich meine mein Apple kennt die Kommandos überhaupt nicht (command not found)
z.B. gehen ipcs und strace nicht.

man ist mir schon bekannt.

D.h. ich kann mit Fink linux apps installieren?
Dann geht auf deinem Mac auch ein "abt-get install package"
Das soll sicher apt-get heißen. Was ist das denn genau?
 
ipcs und strace gehören auch nicht zu standard kommandos...
strace kannst du aber eh nicht auf os x laufen lassen, gehört zu den unsupported systemen von strace. ist auch in keinem der pakete von fink oder darwinports...
 
yep, fink installieren und dann kannst du dir den rechner mit allem erdenklichen zukleistern...

aber die bsd standards sollten so oder in einer leichten abwandlung ja eh verfügbar sein.
compiler,...kommen glaub ich mit den xtools, wie du ja auch schon sagtest.
 
ok danke für für eure infos :)
 
Hi,

ich hab jetzt Fink drauf. Dort hab ich bei den Packeten apt und apt-dev aktualisiert. Apt-get war nicht dabei. Was muss ich jetzt noch machen, damit ich ipcs (anzeigen der existierenden IPC-Objekte + Status) im terminal ausführen kann? So gehts nämlich noch nicht.
 
herausfinden in welchen fink package das ist ;)
aber ich glaub es gibt keins...

http://www.cameronpond.org/computer.html
da kannst du eine kext und die sourcen der programme runterladen
 
hi,

danke für den Link zum ipcs-Programm. Aber gerade wollte ich wieder ein C-Programm compilieren und bekam den Fehler, dass malloc.h fehlt. Ich dachte wenigstens malloc.h ist standardmäßig auf nem Mac.

Das kann ich doch sicher auch per apt-dev nachrüsten. Aber irgendwie bekomm ich das mit dem apt-dev nicht richtig hin. Wenigstens weiß ich jetzt wo es hininstalliert wurde (/sw/bin/apt-dev).

ipcsrm währe auch nicht schlecht zu haben.

Danke schonmal für tipps.

Achja: Hab jetzt mal ein Live-Linux-CD runtergeladen, ich hoffe, dass dann wenigstens damit geht.
 
Hast Du denn die Developer-tools installiert!?
Damit sollte der Compiler mit allen headern installiert sein...
 
Hast Du denn die Developer-tools installiert!?
Damit sollte der Compiler mit allen headern installiert sein...
Die sind intalliert, ja. Aber er findet malloc.h trotzdem nicht :-(
 
include <sys/malloc.h>
sollte das eigentlich finden...
 
Danke, so gehts! ABER jetzt bekomm ich einen Fehler in der malloc.h
Irgendwas an einer Struct scheint nicht zu passen:
Ich bekomme diese Fehler:
Code:
In file included from u3_stack.c:31:
/usr/include/sys/malloc.h:279: error: parse error before "u_short"
/usr/include/sys/malloc.h:285: error: parse error before '}' token

Auszug aus malloc.h Zeile 275-285:
Code:
struct kmemstats {
        long    ks_inuse;       /* # of packets of this type currently in use */
        long    ks_calls;       /* total packets of this type ever allocated */
        long    ks_memuse;      /* total memory held in bytes */
        u_short ks_limblocks;   /* number of times blocked for hitting limit */
        u_short ks_mapblocks;   /* number of times blocked for kernel map */
        long    ks_maxused;     /* maximum number ever used */
        long    ks_limit;       /* most that are allowed to exist */
        long    ks_size;        /* sizes of this thing that are allocated */
        long    ks_spare;
};
 
Zurück
Oben Unten