LINUX.ORG.RU

Сколько раз в секунду планировщик в linux передает процессору процесс на выполнение? сколько по времени выполняется процесс?

 ,


0

3

процессор выполняя команды из оперативки выполняет поток инструкций - часть кода - это ось, часть кода это процессы (нити).

Сколько процессорного времени отводится программе в секунду?

где почитать про то сколько выделяется процессорного времени программе? как можно это посмотреть?

★★★★

Процессорное время выделяется не в секундах, а в квантах. Сколько микросекунд в кванте рассчитывается как функция.

Liz812
()
Ответ на: комментарий от Vlad-76

Я не знаю. Про это не рассказывали. Помню что число квантов связано с приоритетом потока который тоже меняется динамически. И кванты выделяют не процессу а потоку. Очевидно что это зависит от загрузки системы.

Liz812
()
Ответ на: комментарий от Vlad-76

Если тебе для общего развития, то в википедии «на пальцах» всё объясняется. Если нужны детали, копай исходный код.

no-such-file ★★★★★
()

Насколько мне известно, в процессоре есть таймер, частоту срабатывания которого можно менять, при срабатывании таймера ос тормозит один процесс и возобновляет другой и так по кругу. Чем больше активных процессов, тем меньше времени уделяется конкретному процессу, но процесс может не до конца использовать своё время и передать его другим процессам, так же ос может каким либо процессам давать время чаще. Частота этого таймера указывается в настройках ядра при компиляции, и может иметь значения(в герцах) 100, 200, 250, 300, 1000. Обычно в дистрибутивах стоит 250 или 300.

Taetricus
()
Последнее исправление: Taetricus (всего исправлений: 1)

Погугли «A complete guide to Linux process scheduling” или как-то так. Неплохой обзор шедулеров. Ну или книги по ним и, конечно же, код.

anonymous
()

Интерапт по таймеру вызывается 1000 раз в секунду на десктопе. Там уже планировщик по хитрой схеме вычисляет, забрать проц у процесса или нет.

anonymous
()
Ответ на: комментарий от anonymous

Это даже в былые времена отвечал на даже не на половину.

Заголовок треда напомнил кекса, который на экзамене ляпнул: «25 раз в секунду, больше глаз не видит и смысла нет».

t184256 ★★★★★
()
Последнее исправление: t184256 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Долбаные автокоррект и спешка.

Скорее всего это было «это даже в былые времена отвечало на вопрос ТСа даже не на половину».

t184256 ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

Я тогда ещё сдавал, а не принимал. Но в тот день в той аудитории прослезились от смеха даже ни в чем не повинные физики, сдававшие физику.

t184256 ★★★★★
()

Ты можешь насчитать всё по правилам, но планировщик в реальности похерит все расчёты. Всё в динамике если я не ошибаюсь. А планировщик планировщику рознь не даром их как грязи на вкус и цвет. Приоритеты и всё такое.

Хотя если честно каюсь я сам не до конца понимаю как оно в реальности

Так то вот cat /proc/sys/kernel/sched_latency_ns

Выделяемое время для какого то фиксированного количества потоков, если их больше это чисто делится на всех с учётом выставленного для потока приоритета. Как то так. Но это не точно

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от t184256

Я тоже взоржал сейчас :D немножко. А поц молодец порадовал парты, кровь разогнал =) Я даже где то читал длиииинную статью про то что перед напряжённой умственной работой полезен смех и чем он будет истеричнее тем лучше, там всё сводилось к тому что надо смеяться пока не устанешь от смеха и смеятся уже физически тяжело тогда по каким то там графикам выяснилось что концентрация и консолидация памяти вырастает на порядки, а уровень кровоснабжения мозга чисто рефлекторно удерживается на высоком уровне довольно долгое время.

Ещё был прикол описан как тренировать периферическое зрение через страх. Если со смехом мне лень было то со страхом я на себе повторял эксперимент. Посмотреть что то страшное особенно то что эксплуатирует страх «Эффекта зловещей долины» или эффекта когда за тобой из за деревьев кто-то смотрит илив шкафу под кроватью сидит. Короче примитивный и самый сильный основанный на обострённом распознвании образов. И если пройти по коридору до страха в сумраке и во время испуга то боковы зрением не скажу что видно больше, но явно хрен ты споткнёшься о преграду в сумраке, короче это надо чувствовать и это тренируется типа :D

Выдыхаю :D

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от t184256

Что не так-то? Некая функция в ядре вызывается тысячу раз в секунду (если десктоп), затем смотри код своего планировщика. Ответ на 100% корректен. Про свои тиклесс рассказывайте сказки, ога.

anonymous
()
Ответ на: комментарий от anonymous

ОК, перенесём я в прошлое и забудем про tickless, SMP, RT-примочки, HPC-оптимизации и прочие «новомодные» фишки. Ты сказал набор истинных утверждений: таймер тикает, интеррапты случаются, управление по ним даётся планировщику, может настать переключение контекста. Класс.

Че, все? А может не настать? А как часто это происходило бы на системе ТСа, будь она одноядерной, можешь оценить? А может таймер тикнуть, а планировщик не вызваться вообще? А может контекст переключаться без таймера? А это как часто происходит?

100%, ага eyeroll.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Эмм.. я, кажется, там написал смотреть код планировщика. Я вот его читал и понимаю, а ты?

ps: нет никакого tickless. Это страшилка для арчешкольников из ранных надцатых.

anonymous
()
Ответ на: комментарий от t184256

На одноядерной системе невозможно ситуация, в которой не будут обрабатываться интерапты от таймера. Системе нужно обеспечивать обновление jiffies, следовательно одно ядро(основное) будет задействовано для этого и интерапты все равно будут происходить и процессы решедулиться.

xpahos ★★★★★
()
Ответ на: комментарий от no-such-file

Лучше сам загугли. Там точно так же потоки переключаются по тику, если на аппаратный поток приходится больше одного программного потока. На десктопе это всегда так, и эта фича на десктопе бесполезна.

anonymous
()
Ответ на: комментарий от t184256

25 раз в секунду, больше глаз не видит и смысла нет

Та это очередной амудун был.

anonymous
()
Ответ на: комментарий от anonymous

точно так же потоки переключаются по тику

Я конечно не настоящий сварщик, но насколько я понимаю, там тики не происходят через фиксированные промежутки времени, а вычисляются динамически.

no-such-file ★★★★★
()

perf в зубы и смотри на практике когда и сколько

anonymous
()
Ответ на: комментарий от Liz812

Время системного таймера 1мили секунда. Время переключение между потоками составляет 1 мили секунда. Не путать с временем задержки которое может составлять и микро секунду.

Alex_Golubev
()
Ответ на: комментарий от anonymous

…тысячу раз в секунду (если десктоп)

…нет никакого tickless.

Да не, ты просто лox корявый, который совсем не в теме.

«Если десктоп» – красота-то какая, а? И никаких ‘HZ’ упоминать не надо, просто «если десктоп».

anonymous
()
Ответ на: комментарий от Alex_Golubev

Время переключение между потоками составляет 1 мили секунда

Нет. У тебя планировщик динамически рассчитывает приоритеты потоков.

Liz812
()
Ответ на: комментарий от Liz812

Ах да в qt не понимаю. Но в линукс понимаю очень хорошо. И ты даже не знаешь что такое системный таймер и как он устроен. Ты хоть знаешь куда он считает up-down or down-up ? И какая у него разрядность? И что такое main стек поинт. Ах да есть еще не main. Интересно какой? А какая организация памяти у ПК? Что такое временные диаграммы? Вот для USB сможешь написать хотя бы CDC на чистом си? Или поднять TCP/ip на си? Знаешь я программист нижнего уровня и как работает процессор и что такое логика схемотехника знаю уж очень хорошо. Ты хоть знаешь что такое карты карно? Сможешь хотя бы через указатель разложить float на байты и собрать? А сопроцессор что такое? Векторная арифметика? Чета понесло меня.

Alex_Golubev
()
Ответ на: комментарий от Alex_Golubev

как работает процессор и что такое логика схемотехника знаю уж очень хорошо

Бе, бе, бе. Спорим, что ты даже не знаешь чем суперскалярный CISC отличается от VLIW?

Liz812
()
Ответ на: комментарий от Alex_Golubev

Твои понты какие-то не очень-то и понтовые, если честно. Ничего особенного. И к чему весь этот апломб?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.