Можно ли сделать в Linux невытесняющую многозадачность

Взгляд изнутри

Модератор: Модераторы разделов

Ответить
kola84
Сообщения: 1

Можно ли сделать в Linux невытесняющую многозадачность

Сообщение kola84 »

Всем привет!

Куда задавать вопрос не знаю, поэтому пишу сюда.

Есть некоторая утилита, которая запускается из под Linux. Она производит оценку некоторой величины (какой величины - не важно, да и объяснять долго). Сейчас передо мной стоит задача: выяснить, связана ли погрешность оценки величины с многозодачностью ОС.

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

Собственно, вопросы следующие:
1) Можно ли как-то сделать в Linux невытесняющую многозадачность ?
2) Можно ли как-то превратить Linux в однозадачную ОС ? (то есть чтобы запустить эту одну утилиту и всё процессорное время будет отдано ей)
3) Можно ли как-то превратить Linux в ОС реального времени ?

Заранее спасибо!

iУведомление от модератора diesel

вопрос околоядерный, поехали в Kernel Unleashed наверное
Спасибо сказали:
Аватара пользователя
nesk
Сообщения: 2268
Статус: Линукссаксовец
ОС: MS Windows XP Home SP3
Контактная информация:

Re: Можно ли сделать в Linux невытесняющую многозадачность

Сообщение nesk »

http://ru.wikipedia.org/wiki/RTLinux


UPD Возможно Вас устроит просто man chrt
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.

0xDEFEC8ED
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: Можно ли сделать в Linux невытесняющую многозадачность

Сообщение frp »

kola84 писал(а):
26.10.2009 00:03
2) Можно ли как-то превратить Linux в однозадачную ОС ? (то есть чтобы запустить эту одну утилиту и всё процессорное время будет отдано ей)

Превратить Linux в однозадачную ОС нельзя, но можно вырубить все сервисы кроме жизненно важных, поставить вашей программе максимальный приоритет и вашей программе система отдаст почти все процессорное время.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Можно ли сделать в Linux невытесняющую многозадачность

Сообщение drBatty »

kola84 писал(а):
26.10.2009 00:03
2) Можно ли как-то превратить Linux в однозадачную ОС ? (то есть чтобы запустить эту одну утилиту и всё процессорное время будет отдано ей)

наберите от рута
kola84 писал(а):
26.10.2009 00:03
3) Можно ли как-то превратить Linux в ОС реального времени ?

да. хотя я не знаю точно, насколько для вас подойдёт это R в "RTL". почитайте про "ядерную физику", там много про RTL.

kola84 писал(а):
26.10.2009 00:03
1) Можно ли как-то сделать в Linux невытесняющую многозадачность ?

не знаю.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: Можно ли сделать в Linux невытесняющую многозадачность

Сообщение frp »

drBatty писал(а):
26.10.2009 20:46
наберите от рута
Код
init 1

Это не будет однозадачная ОС. И не на всех дистрибутивах это можно сделать командой init 1. И я об этом уже писал, и у многих дистрибутивов (точно у Debian и ASP) это можно выбрать в загрузочном меню.
Спасибо сказали:
Аватара пользователя
Crazy
Сообщения: 862
Статус: Адепт Дзен.
ОС: Mint, Win7.

Re: Можно ли сделать в Linux невытесняющую многозадачность

Сообщение Crazy »

Собственно, вопросы следующие:
1) Можно ли как-то сделать в Linux невытесняющую многозадачность ?
2) Можно ли как-то превратить Linux в однозадачную ОС ? (то есть чтобы запустить эту одну утилиту и всё процессорное время будет отдано ей)

Сделай непрерываемый процесс. Запусти на уровне ядра.
Можно ли как-то превратить Linux в ОС реального времени

В Linux и так используются алгоритмы диспетчеризации как для RT.
Особенность RT фиксированное число задач. Если что угодно запускать, толку не будет.

Desipere in loco
Спасибо сказали:
Ответить