[Ответить в тред] Ответить в тред

15/11/16 - **НОВЫЙ ФУНКЦИОНАЛ** - Стикеры
09/10/16 - Открыта доска /int/ - International, давайте расскажем о ней!
30/09/16 - BREAKING NEWS ШОК АБУ ПРОДАЛСЯ МЭЙЛУ (на самом деле нет)


Новые доски: /2d/ - Аниме/Беседка • /wwe/ - WorldWide Wrestling Universe • /ch/ - Чатики и конфочки • /int/ - International • /ruvn/ - Российские визуальные новеллы • /math/ - Математика • Создай свою

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 76 | 4 | 20
Назад Вниз Каталог Обновить

Аноним 30/11/16 Срд 03:02:26  141169366  
download.jpg (9Кб, 201x251)
Невозможное задание
Сап, бредач, на связи студент-кун, 19 лвл. Сегодня я наконец решил написать курсач по "Операционным системам" и прочел задание. Сразу скажу, что препод по этому предмету женщина лет сорока, которую походу заставили вести ОпСис, ибо недостаток знаний/понимания у нее видит даже самый отбитый быдлан.
Так вот, само задание:
Разработать программу-диспетчер операционной системы для ОС Windows, который должен обеспечивать моделирование обрабатывающего устройства и очереди к нему
Не поняв, что от меня вообще хотят, я подошел к ней и выяснил, что обрабатывающее устройство - это процессор. А очередь должна быть из процессов, которые выполняются. То есть некоторые процессы выполняются, а некоторые - нет, они ждут своей очереди на выполнение.
Но в винде же МНОГОЗАДАЧНОСТЬ! Программы не ждут своей очереди, они выполняются чуть ли не одновременно, занимая разное процессорное время в зависимости от приоритета. Некоторые, конечно, бездействуют, но не потому что ждут очереди, а потому что им нечего делать.
Так вот, это я тупой или такую программу, которая бы показывала очередь выпонения процессов в винде просто невозможно написать, потому что никакой очереди там нет?
Как быть?
Может есть вариант решения этой задачи?
Как мне писать курсач?
алсо она сказала "Да, у тебя очень сложное задание, нужно хорошо подумать, поискать аналоги, а потом написать свое программное обеспечение.
P.S. Другие варианты этого курсача такого типа "написать программу, которая может перевести компьютер в спящий режим". :facepalm:
Аноним 30/11/16 Срд 03:03:41  141169412
Бамп ночной.
Аноним 30/11/16 Срд 03:04:08  141169425
Бамп армейский
Аноним 30/11/16 Срд 03:04:43  141169448
Бамп тупой
Аноним 30/11/16 Срд 03:06:06  141169514
Что за вуз?
Аноним 30/11/16 Срд 03:06:22  141169525
>>141169366 (OP)
> P.S. Другие варианты этого курсача такого типа "написать программу, которая может перевести компьютер в спящий режим". :facepalm:
$ systemctl suspend
Аноним 30/11/16 Срд 03:07:44  141169567
>>141169366 (OP)
Хотя, ОП, я похоже понял, чего от тебя хотят.
Все сделать можно, только долбоебы сформулировали как всегда все через жопу.
Аноним 30/11/16 Срд 03:12:57  141169741
>>141169567
Собсно, если ОП-хуй еще не свалил, могу по хардкору объяснить по пальцам, поскольку подобную хуету я использовал на практике на работке.
Аноним 30/11/16 Срд 03:17:00  141169851
>>141169741
Иди нахуй
Аноним 30/11/16 Срд 03:17:51  141169881
>>141169851
Ну тогда страдай, пидор.
Аноним 30/11/16 Срд 03:18:57  141169911
блядь, анон напиши ей диспетчер задач и все. или напиши две программы. одна форкает кучу процессов с разными таймаутами, а другая показывает очередность их исполнения (исходя из таймаутов). ну будь креативнее. Если скажет хуету принес, скажи сама дура не понимаешь нихуя, тз должно быть нормальным. что мне переделать чтобы резульата вас устроил?
Аноним 30/11/16 Срд 03:21:41  141169984
>>141169366 (OP)
Вот вся пидорха и её образование такое. Нахуя как и зачем это вообще всё нужно, всем похуй.
Аноним 30/11/16 Срд 03:21:59  141169996
>>141169911
ТЗ нормальное. От опа просто хотят чтобы он написал сорт оф виртуальную машину с кооперативной многозадачностью (короче как гринтреды).
Аноним 30/11/16 Срд 03:23:21  141170034
>>141169366 (OP)
>Но в винде же МНОГОЗАДАЧНОСТЬ!
Какая разница, что там на винде, тебе ведь эмулятор процессора надо написать.
Аноним 30/11/16 Срд 03:24:58  141170079
>>141169984
Двачую. Еще сказали бы свой драйвер для windows 95 написать.
Аноним 30/11/16 Срд 03:25:27  141170093
>>141170034
>эмулятор процессора
Ты даун блядь?
Лолед нахой! Откуда на ночном дегенераты такие?
Аноним 30/11/16 Срд 03:25:30  141170094
>>141170034
Двачну.
А заодно и компилятор скорее всего.
Аноним 30/11/16 Срд 03:26:37  141170128
>>141170093
Да нет, манюнь, даун - это как раз ты.
Именно эмулятор процессора тут писать и надо.

Со счетчиком инструкций, стеком и прочей хуйней. Самое простое - заебашить стек-машину.
Аноним 30/11/16 Срд 03:27:06  141170144
>>141169366 (OP)
О, я сегодня экзамен завалил по ОС как раз. Сам заочник дропнул шарагу на 3курсе, это говно не учил, работаю не по специальности. Думал на изичах прийду скатаю и досвидос. Но преподша оказалась не простого десятка, и никому не давала списать. Я так и сдал пустой листочек. Чувствую себя дебилом, хоть и рациональным.
Аноним 30/11/16 Срд 03:27:46  141170163
Lel
Аноним 30/11/16 Срд 03:28:38  141170188
>>141170128
Иди на хуй отсюда уже, не позорься дальше порванка. А то наэмулирую тебе процессоров за щеку, зеленый.
Аноним 30/11/16 Срд 03:29:39  141170221
>>141170128
>Со счетчиком инструкций, стеком и прочей хуйней. Самое простое - заебашить стек-машину.
Орнул, чё несешь, упоротый?
Аноним 30/11/16 Срд 03:30:06  141170235
>>141170188
Тебе завтра ко второму уроку?
Аноним 30/11/16 Срд 03:30:34  141170254
>>141170221
Это ты упоротый, петушок.

Нахуй ты вообще в вузик шел, если ты такое одноклеточное?
Аноним # OP  30/11/16 Срд 03:31:31  141170282
>>141169741
НЕТ, БРАТИШКА, Я НЕ СВАЛИЛ, РАССКАЗЫВАЙ!
нахуй тебя не я послал
Аноним 30/11/16 Срд 03:32:21  141170311
>>141170282
Ну и окай.
Ща длиннопасту накатаю.
Аноним 30/11/16 Срд 03:32:43  141170323
Task.jpg (66Кб, 405x720)
>>141170254
Да нет, не может быть так сложно, вы бы другие варианты видели.
Аноним 30/11/16 Срд 03:34:25  141170375
>>141169911
Мои знания примерно на нуле, так что если вдруг захочешь подробнее рассказать об этом, милости прогу. Ну там ссылки всякие хоть кинь.
Аноним 30/11/16 Срд 03:35:10  141170396
>>141170375
>милости прогу.
прошу*
Аноним 30/11/16 Срд 03:36:22  141170437
>>141169366 (OP)
Запусти ей батник с tasklist, это всё что требуется по аналогии со спящем режимом. Можешь захуярить екзешник с красивым ярлыком.
Аноним 30/11/16 Срд 03:37:17  141170459
>>141170323
Уровень сложности пиздец плавает, конечно.
> Среда реализации: Borland C++ Builder 6
MDA XEX
Аноним 30/11/16 Срд 03:39:09  141170507
>>141170323
Может, анон, может.
Уровень сложности курсачей реально может плавать от "постройте пирамидку в песочнице" до "соберите ядерный реактор на быстрых нейтронах"
Аноним 30/11/16 Срд 03:39:43  141170519
>>141169366 (OP)
Ты дебил. Нехер было прогуливать пары. Многозадачность не означает, что процессы выполняются разом. Такое вообще физически возможно только на многопроцессорных системах. Именно, что процессы ждут очереди и выполняются. Правда ждут они её очень немного, потому что система быстро переключается между процессами.
А ещё ты не так понял задание курсача, еблан.
Аноним 30/11/16 Срд 03:40:00  141170530
>>141170459
Она сказала где угодно пишите
Аноним 30/11/16 Срд 03:40:50  141170549
>>141170519
Ну так объясни мне, я не спорю, что я сам даун. не агрись плс
Аноним 30/11/16 Срд 03:42:49  141170604
>>141170519
А я физически имею вообще доступ к этой "очереди". Там разве за секунду не выполняются 1000+ инструкций из разных команд? Разве процессор не переключается хуилиард раз за секунду между разными программами?
Аноним 30/11/16 Срд 03:42:52  141170606
В Microsoft вообще в курсе о таком пиздеце ?
Аноним 30/11/16 Срд 03:43:57  141170633
>>141170549
Тебе нужно не за реальными процессами следить, а запилить модель, которая покажет, как реализуется многозадачность.
Аноним 30/11/16 Срд 03:45:15  141170667
>>141170282
Короче.

Напиши виртуальный процессор, который будет выполнять байткод. Процессор стековый (т.е. будет оперировать херней уровня "сложить 2 числа на стеке, результат вернуть в стек").
Для него в систему команд добавь что-то типо WAIT - она должна будет переключать процессор на другой процесс. Такая хуйня будет эмулировать вытесняющую многозадачность.



На работке у нас юзалась такая хуйня - компилились скрипты на сишке в байткод и выполнялись виртуальной машиной, профиты - не надо ебаться с многозадачностью, когда ОС может переключить процесс когда угодно из-за чего пришлось бы сношаться с блокировками и синхронизацией. Так система переключит процесс только тогда когда ты прямо вставишь такую инструкцию (на практике - в циклах, или когда идет ожидание какого-то события)
Аноним 30/11/16 Срд 03:45:19  141170672
>>141170604
Да. Не имеешь. Да. Переключается всё крайне быстро.
Но тебе оно и не надо.
>>141170633
Аноним 30/11/16 Срд 03:45:23  141170675
>>141170604
Нет, не имеешь. Написано же, МОДЕЛИРУЮЩУЮ. Вот и будет у тебя сидеть однопоточный наколеночный диспетчер и квантовать свои кванты времени.
Аноним 30/11/16 Срд 03:47:04  141170716
>>141170667
Не, тут скорее нужно показать, как восстанавливаются регистры и передаётся управление. Ну и прерывания, по которым происходит переключение. Как я полагаю.
Аноним 30/11/16 Срд 03:50:16  141170815
arh1.jpg (9Кб, 160x229)
arh2.jpg (13Кб, 200x297)
>>141169366 (OP)
Таких программ уже на сто лет вперед написано. Поищи в книдках по C++ Builder или по Delphi или покапайся на древних форумах типа sources.ru там сотни раз такие задания всплывали. В прикриплейтед книгах кажется есть что тебе нужно. Ищи раздел "распределенные приложения". Не благодари.
Аноним 30/11/16 Срд 03:50:25  141170817
>>141170604
Написал:
function theProcessor(command) { return eval(command); }
var commandQueue = ['1+2', '2*3', 'Math.sqrt(9)'];
commandQueue.forEach(function(a) { alert(theProcessor(a)); });
Аноним 30/11/16 Срд 03:50:42  141170824
>>141170716
Как вариант, кстати, он может написать в линупсе чуть ли не сраный скрипт, который будет запускать процессы, и по очереди слать им SIGSTOP/SIGCONT. Это было бы проще всего.
Аноним 30/11/16 Срд 03:50:53  141170830
БОЖЕ, НО ВЕДЬ Я У НЕЕ СПРОСИЛ, КАК ДЕЛАТЬ, ОНА ОТВЕТИЛА, ЧТО НУЖНО СЛЕДИТЬ ЗА ВИНДОЙ, А НЕ МОДЕЛИРОВАТЬ СВОЕ!
Аноним 30/11/16 Срд 03:52:06  141170868
Вытесняющая многозадачность. И да, они стоят в очереди и ждут.
Аноним 30/11/16 Срд 03:52:16  141170874
>>141170815
>распределенные приложения
Этого двачую. Тред можно закрывать.
Аноним 30/11/16 Срд 03:52:51  141170889
>>141170830
> который должен обеспечивать моделирование обрабатывающего устройства и очереди к нему
Аноним 30/11/16 Срд 03:54:17  141170929
>>141170815
Огромное спасибо, анон. Поищу
>>141170667
С таким наверное не справлюсь, но если без вариантов, то попробую
Аноним 30/11/16 Срд 03:54:37  141170935
>>141170889
Видимо она сама свое же задание не поняла.
Аноним 30/11/16 Срд 03:57:07  141171017
1436086711prizr[...].jpg (56Кб, 1024x576)
>>141170830
За виндой нельзя следить. Винда по ушам палкой надаёт.
А если серьёзно - как следить, если у тебя в это время другой процесс выполняется? Это явная ошибка.
Аноним 30/11/16 Срд 03:57:19  141171021
>>141170868
> Вытесняющая многозадачность. И да, они стоят в очереди и ждут.
Можно реализовать кстати совковую многозадачность. Некоторые рандомные процессы будут пробиваться без очереди "только спросить".
Аноним 30/11/16 Срд 03:58:48  141171074
>>141171021
Помню нам рассказывали, что когда взяли на обслуживание такой совковый компуктер, выяснилось, что один из процессов там два года висел один процесс с низким приоритетом в ожидании.
Аноним 30/11/16 Срд 03:59:59  141171109
>>141171021
ПРЕ-РЫ-ВА-НИ-Я
Аноним 30/11/16 Срд 04:00:44  141171128
>>141170935
Ну ебтваю!
Все просто же.

Твой процессор - кассирша в макдаке, процессы стоят в очереди, у процессов есть номера-идентификаторы (PID) - цифра на чеке напечатана. Кассирша-планировщик их по очереди вызывает, и выдает им квант хавки, если в очереди никого нет - идет дрочить в туалет.
Аноним 30/11/16 Срд 04:02:16  141171180
>>141171128
Подробнее про PID, это просто номер или влияет на приоритет?
Аноним 30/11/16 Срд 04:04:24  141171256
>>141171128
Я могу эту очередь видеть в винде или нет?
Аноним 30/11/16 Срд 04:05:06  141171271
>>141171180
PID - это просто номер, Process ID.

Можно проще. Есть куча голых мужиков, стоят в очереди к шлюхе. На листочке написано что делать (код процесса) - там отсосать, анус вылизать, пердак подставить.
А в зависимости от приоритета (номинала купюры в руке процесса) - шлюха одного будет обслуживать 5 минут, а у випа к примеру час. Если время по приоритету истекает - мужик отправляется в конец очереди, если ему надо отодрать шлюху еще раз.
Аноним 30/11/16 Срд 04:06:17  141171298
>>141171256
Ты можешь ее изобразить. Как в детстве - когда пиздюки играли в войнушку, оружия ни у кого не было, и все носились с палками и кричали "пыщ-пыщ-пыщ", "ты убит".
Аноним 30/11/16 Срд 04:07:15  141171324
>>141171271
Ах да.
Рот/пизда/жопа шлюхи - это устройства.
Аноним 30/11/16 Срд 04:19:29  141171598
>>141170519
У нас тут 2076, многоядерные камни подвезли. Не, не слышал?
P.S. Поссал в ротешник опу-дегенерату
:redlol:
Аноним 30/11/16 Срд 04:21:33  141171647
>>141171598
Опу то за что?
Аноним 30/11/16 Срд 04:22:22  141171674
>>141171598
Очередь всё равно на месте же. Иначе ты бы на своём 2 ЯДРА 2 ГИГА больше двух процессов и не запустил никогда.
Аноним 30/11/16 Срд 04:24:12  141171723
>>141171674
Где я говорил про очередь, ебанько?
>>141171647
Недержание.
ПОШЕЛ НАХУЙ СО СВОЕЙ КАПЧЕЙ!
Аноним 30/11/16 Срд 04:27:23  141171799
>>141169366 (OP)
Охуеть. То есть, если в метро три двери входные и два эскалатора на спуск, то люди чисто из-за своей тупизны сразу все не заходят и устраивают давку?
Аноним 30/11/16 Срд 04:48:45  141172283
>>141169525
программу syka, а ты команду ебучую пишешь для консоли
Аноним 30/11/16 Срд 04:52:59  141172372
1) Заходишь на MSDN
2) Вбиваешь функцию ToolHelp32Snapshot
3) Гуглишь как её использовать
4) Делаешь диспетчер задач консольный со списком процессов

Бонусом можешь запилить функцию отключения процесса по PID (MSDN - NtTerminateProcess)

Думаю этого должно хватить. Работы буквально на 10 минут.
Аноним 30/11/16 Срд 04:55:20  141172420
>>141172372

так уж быть щас наколякаю ОПу долбаебу
Аноним 30/11/16 Срд 04:59:58  141172507
#include <cstdio>
#include <Windows.h>
#include <TlHelp32.h>

int main()
{
printf("Manya Task manager v1.0 OP xuy /n");
HANDLE procmg = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 proch = new PROCESSENTRY32;
(
proch).dwSize = sizeof(PROCESSENTRY32);

while (Process32Next(list, proch) != FALSE)
{

printf("Process , process ID : %s tt %d n", (hproc).szExeFile, (hproc).th32ProcessID);

}

getchar();
return 0;

}


Аноним 30/11/16 Срд 05:00:59  141172523
>>141169366 (OP)
Многозадачность это и есть 4 ядра, 8. Всё что более кол — ва ядер на компе идёт в прерывание.
Прерывания так быстры что видится одновременное исполнение.

Оп, ты ебучие быдло, гуглить даже не умеет, зато на дваче гонит на преподавателя
(случайно прошлые темы не ты создавал?)
Аноним 30/11/16 Срд 05:11:19  141172710
>>141172283
запакуй в батник епта бля сука
Аноним 30/11/16 Срд 05:22:17  141172911
Оп хуй тема сажа.
Аноним 30/11/16 Срд 05:27:28  141173031
>>141172523
>Многозадачность это и есть 4 ядра, 8
еблан
Аноним 30/11/16 Срд 05:29:29  141173080
>>141173031
Нет докажи
Аноним 30/11/16 Срд 05:40:04  141173328
>>141172420
Спасибо, братишка. Да хранит тебя Аллах. Попробую впарить ей это.
бля, кажется она говорила делать гуй
Аноним 30/11/16 Срд 05:40:49  141173340
>>141172523
Не, я ридонли сидел

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 76 | 4 | 20
Назад Вверх Каталог Обновить

Топ тредов
Избранное