2016-04-23 6 views
0

Hier ist mein Verständnis des Problems ist:, wie zu Beginn des vorhandenen CPU-Scheduling in Gruppenzeitplanung in Linux zu ändern

wir Änderung des bestehenden CPU-Scheduler, aufgefordert werden, die einfach die CPU-Auslastung auf je aufspaltet, wie viele Prozesse gibt es.kümmert es nicht um die Gruppen.

(I 2 erstellt Gruppen endständig "groupadd" und 3-Benutzer unter Verwendung von "useradd" verwenden.

dann verwendet, I "usermod -G ...", um diese Benutzer zu den Gruppen hinzuzufügen.

Gruppe1: user1, user2

group2. user3

benutzer1 2 Prozesse läuft,

benutzer2 läuft 1 Prozess,

user3 läuft 1 Prozess

Wenn ich laufen Befehl "top" sehen, alle Prozesse zu verwenden, kann ich sehen, dass sie alle ~% verwenden 25 . die CPU)

aber was will ich erreichen ist: (ich glaube, es „Gruppenplanung“)

gruppe1 genannt und group2 bekommt% 50

so,

benutzer1 Prozesse erhalten% 12,5% 12,5,

benutzer2 der Prozess wird% 25, ​​

user3 der Prozess wird% 50)

Als ein vollständiger Anfänger (ich weiß nur, wie man einen Systemaufruf macht, U weiß, wie man einen Prozess 'nette, Zähler ... Werte erhält), habe ich keine Idee, wie man das beginnt.

Linux/kernel/sched.c

Linux/include/Linux/sched.h

Linux/kernel/fork.c

Linux/include/ASM-i386/param.h

Ich habe versucht, diese Dateien zu überprüfen, aber ich weiß nicht einmal, wonach ich suche. Ich bin hier wirklich verloren. Kannst du mir bitte einen Startpunkt geben? Ein Tipp darüber, was geändert werden soll oder was und wo hinzugefügt werden soll?

Antwort

0

Wenn Sie auf einem Debian-System installieren sind

apt-get install cgroup-tools 

Die haben einen Blick auf ihren Mann Seiten.Der Ausgangspunkt ist wie immer der Mann Seiten

dh
man cgrules.conf 

Sie können Regeln Setup wie folgt (von Mann Seite genommen)

Rules have two formats: 

      <user>     <controllers>  <destination> 
      <user>:<process name> <controllers>  <destination> 
..... 
..... 
peter   cpu    test1/ 
%    memory   test2/ 

Der Mann Seite eine Vielzahl von Informationen hat es sie.