Azad, you're NOT able to reduce the nice-value; you simply chose not to check the result of what you're doing. Check the content of r after you try to apply a negative increment. It will be -1, which means your attempt failed.
Почему я могу уменьшить приоритет процесса, используя функцию nice () с обычным пользовательским разрешением (кроме ROOT) в linux?
Как я понимаю, каждый пользователь в linux может изменить приоритет каждого процесса с помощью команд nice и renice. Также я знаю, что все пользователи просто могут повысить приоритет процессов, и единственный пользователь, который может уменьшить этот приоритет, это ROOT. Когда я проверял это в терминальной среде с помощью этих команд, все было в порядке. Это означает, что когда я хочу уменьшить приоритет процесса, система выдает текстовое сообщение «Отказано в доступе». Как я знаю, по умолчанию все процессы выполняются с приоритетом. 0
Поэтому, когда я хочу установить приоритет процесса с помощью отрицательного числа, система должна выдать текст ошибки. Когда я запускаю эту программу на языке C:
#include<stdio.h> #include<unistd.h> void main() { int n=10,r; r=nice(n); while(1) printf("Test); }
Я ожидал, что система показывает ошибку, но программа работает без проблем! Хотя программа запускается с типичного разрешения пользователя. Я хочу знать, почему, когда я хочу уменьшить приоритет процесса с помощью команды renice в соответствии с тем, что ожидалось, система показывает ошибку, но когда я хочу уменьшить приоритет процесса с помощью nice()
функции, программы не выдают никакой ошибки? Это предложение All users just can increase the priority of process and the only user that can decrease this priority is ROOT.
верно?
2 ответа на вопрос
#include<stdio.h> #include<unistd.h> #include<sys/resource.h> void main() { int n=10; (void)setpriority(PRIO_PROCESS, 0, n); sleep(60); while(1) printf("Test"); }
After setting the process priority to required level, delay by 1 mins so that we can check altered priority in top/ps command. Check this link, http://linux.die.net/man/2/setpriority
Похожие вопросы
-
9
В чем разница между командами "su -s" и "sudo -s"?
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
4
Каковы различия между основными дистрибутивами Linux? Я замечу?
-
-
2
Ограничить использование процессора для Flash в Firefox?
-
2
Как мне заставить мой микрофон работать под Debian GNOME?
-
2
Конки установки - образцы / идеи?
-
3
Каковы различия между оконными менеджерами Linux?
-
2
ThunderBird / Синхронизация освещения с SE k770i
-
4
Файловая система Linux
-
6
Полноэкранная медленная вспышка в KDE 4