Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
PCB

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - C
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
gast1



Anmeldungsdatum: 10.03.2006
Beiträge: 2

BeitragVerfasst am: 10. März 2006 15:52   Titel: PCB

hi

ich versuch ein programm in c zu schreiben, der die einträge vom PCB direct liset und ein paare informationene über laufende prozesse auflisten muss.
ich habe alle notwendige bibliotheke geladen(shed.h..........etc). aber trozdem bekomme ich die meldung das der programm kein verrweis auf die PCB hat.

kann mir jemand bitte tip geben.

dabke
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 10. März 2006 19:39   Titel: Re: PCB

gast1 hat folgendes geschrieben::
ich versuch ein programm in c zu schreiben, der die einträge vom PCB direct liset und ein paare informationene über laufende prozesse auflisten muss.
ich habe alle notwendige bibliotheke geladen(shed.h..........etc). aber trozdem bekomme ich die meldung das der programm kein verrweis auf die PCB hat.

kann mir jemand bitte tip geben.

Schwierig. Zumal du nicht erklärst, was für dich ein PCB ist (Printed ciruit board? Polychlorbiphenyl? ...?)

Außerdem ist "sched.h" keine Blibothek sondern eine Headerdatei. Die entsprechenden Dinge sind in der Glibc vorhanden, die der C-Compiler üblicherweise ohne weiteres Zutun einbindet.

Schreib bitte verständlicher, was du machen willst (Ach ja, reaktiviere doch mal dein Großschreibtaste).

Außerdem solltest du Fehlermeldungen immer gleich mit posten, das erspart DIESE NACHFRAGE. Rolling Eyes

Janka
 
Benutzer-Profile anzeigen Private Nachricht senden

gast1



Anmeldungsdatum: 10.03.2006
Beiträge: 2

BeitragVerfasst am: 13. März 2006 13:33   Titel:

hi,
mit PCB mein ich Prozess controlleblock. diese list befindet sich immer im haupt speicher .ich weiss nicht wie bekomme ich ihre adresse und wie kann ich aus mein programm drauf zugreifen.
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 13. März 2006 17:41   Titel:

gast1 hat folgendes geschrieben::
hi,
mit PCB mein ich Prozess controlleblock. diese list befindet sich immer im haupt speicher .ich weiss nicht wie bekomme ich ihre adresse und wie kann ich aus mein programm drauf zugreifen.

Hm, normalerweise pfuscht ein Userspace-Prozess nicht daran rum. Ich weiß nicht mal, ob das über einen entsprechenden sysctl()-Aufruf in Linux überhaupt noch geht. Auf jeden Fall höchst unportabel.

Selbst ps, das ja das Basiswerkzeug für sowas ist, nutzt seit geraumer Zeit das Verzeichnis /proc. Da kriegst du alle Infos als Dateien.

Was willst du konkret tun? Was soll das werden?

Janka
 
Benutzer-Profile anzeigen Private Nachricht senden

Marco Gerber
Gast





BeitragVerfasst am: 14. März 2006 20:36   Titel: task_struct

tach

Was du meinst ist die task_struct. Es handelt sich dabei um eine Struktur, welche den kompletten Zustand der Prozesse als verkettete Liste, mit fuer jeden Prozess einen Eintrag der struct verwendet.

Du findest sie in:
Code:

include/sched.h


Wenn du vom Userspace darauf zugreifen willst, musst du eine Schnittstelle in den Kernel Space (Ring 0) schreiben. Dazu kannst du ein Modul schreiben, welches das /proc Dateisystem verwendet, und die gewuenschten Daten per Uebergabekommando in eine Datei schreibt, und anschliessendem lesen.
Ein Beispiel wie man das Procdateisystem verwendet findest du unter:
Code:

/usr/src/linux/Documentation/DocBook/procfs_example.c


Oder du schreibst dir einen eigenen sysctl, was aber aufwaendiger wird, aber den Vorteil hat, dass du ihn mittels ioctl als Schnittstelle vom Userspace auslesen / beschreiben (Vorsicht!) kannst.

Viel Spass...

greetz by
Marco Gerber
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - C Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy