Пользователи Stack Exchange рассказали, как дёрганье мышью на самом деле ускоряло работу в Windows 95 Материал редакции

Оказывается, это правда работало.

В закладки
Аудио
Рабочий стол Windows 95 Скриншот Github

1 июля один из пользователей сайта вопросов и ответов Stack Exchange вспомнил о странном поведении Windows 95 при установке приложений. По его словам, процесс можно было ускорить, если перемещать курсор мыши по экрану, однако он не нашёл объяснений в интернете.

Я играл в Hypnospace Outlaw — игру об операционной системе в стиле ретро. Эта ОС своеобразно себя ведёт при загрузке сайтов: дёрганье мышью позволяет загрузить страницу быстрее.

Это напомнило мне кое о чём. Когда я был молод, я точно помню, что Windows 95 (если не в 98) странно себя вела во время установки программ: перемещение курсора мыши ускоряло прогресс. Чем это вызвано? Я пытался нагуглить ответ, но не нашёл ничего об этом.

пользователь user2652379 на Stack Exchange

Пользователи Stack Exchange подтвердили правдивость воспоминаний user2652379. Они пояснили, что причина поведения системы крылась в её архитектуре.

В Windows 95 использовали приоритетную многозадачность: система сама принимала решения о переключении между задачами. При этом ОС обрабатывала события циклами: задачи ввода-вывода данных исполнялись сразу, а на фоновые задачи выделялось одинаковое количество времени — 15,6 миллисекунды.

Если программе нужно было, к примеру, скопировать файлы, система ставила запрос в очередь, ожидала наполнения буфера фоновыми задачами, и только после этого обрабатывала весь пакет. При этом пока задача находилась в режиме ожидания — приложение фактически не работало.

Двигая курсором мыши, пользователи заполняли буфер входящими событиями, заставляя систему перезапускать цикл. Это создавало эффект, что программа работает быстрее.

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

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

Как предположили комментаторы, такое поведение системы было обусловлено совместимостью с низкопроизводительным оборудованием. По одной из версий, систему спроектировали с прицелом на максимальную отзывчивость, поэтому действия пользователя поднимают программу в приоритете.

Пользователь под псевдонимом Cody Gray пояснил, что странное поведение Windows 95 могло быть связано не с самой системой, а с неправильным использованием её особенностей разработчиками. Он сослался на статью разработчика Microsoft Рэймонда Чена, который описал распространённую ошибку вызова функции MsgWaitForMultipleObjects.

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

Как пояснили на Stack Exchange, подобная особенность встречалась только на Windows 95. В более поздних версиях системы архитектуру многозадачности изменили.

{ "author_name": "Дамир Камалетдинов", "author_type": "editor", "tags": ["\u0440\u0435\u0442\u0440\u043e","\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430","\u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442","windows"], "comments": 63, "likes": 154, "favorites": 62, "is_advertisement": false, "subsite_label": "tech", "id": 105088, "is_wide": false, "is_ugc": false, "date": "Fri, 05 Jul 2019 20:13:45 +0300", "is_special": false }
Объявление на TJ
Best running routes nearby
Fitness tracker with amazing paths
0
{ "id": 105088, "author_id": 50011, "diff_limit": 1000, "urls": {"diff":"\/comments\/105088\/get","add":"\/comments\/105088\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/105088"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 214344, "last_count_and_date": null }
63 комментария
Популярные
По порядку
Написать комментарий...
30

Подтверждаю! Даже фотки Джины Джеймсон грузились и открывались потом быстрее когда мышкой тремор устраивал во времена диалапа на 486-м под характерный свист 33й скорости))

Ответить
46

Если кто-то миллениал, вот фотка

Ответить
2

простите, а кто это вообще? чем известна?

Ответить
57

Это Джина Джеймсон

Ответить
4

Сколько же раз я не мог дотерпеть до полной загрузки сверху вниз с дискеты) уже к 12 картинке я был готов)

Ответить
38

Комментарий удален по просьбе пользователя

Ответить
0

А такое можно было реализовать?

Ответить
5

Можно на сервере перевернуть картинку и отдавать как обычный жпег, а клиент пусть монитор перевернет.

Ответить
0

Комментарий удален по просьбе пользователя

Ответить
0

У тебя там в каком качестве было, что ты не мог дотерпеть чтения с дискеты?

Ответить
2

Как ща помню-на дискетах бывало по 20 картинок или 25 максимум

Ответить
0

Не Джина, а Дженна.

Ответить
0

у коли чумакова спроси, он наверняка ретро тоже изучал

Ответить
3

радикальная фемка?

Ответить
0

ну тогда блондинки были в моде

Ответить
0

Катя Кищук

Ответить
0

а есть фотка полная? знакомый просит

Ответить
0

Да, держи .

Ответить
0

а есть фотка полная?

Если недостаточно, то ищи её более свежие фото.
Это Бритни в молодости, говорят, что сейчас она поправилась.

Ответить
0

Не прогрузилась до конца, залей ещё раз, плиз

Ответить
5

Джена, а не Джина она

Ответить
1

У меня 44 кбит/сек выдавал иногда.

Ответить
1

У тебя коробка была со спорт-режимом)

Ответить
1

Тоже помню эти 2 минуты.

Ответить
32

Осталось доказать, что если на кнопку вызова лифта постоянно нажимать, то лифт приедет быстрее.

Ответить
3

Интересно, а на денди, сеге и сони тоже при загрузки можно было кнопки жмакать чтобы быстрее было

Ответить
4

Можно даже на Электронике с волком и яйцами если на ней винда была подкинута)

Ответить
2

Там если продут картридж, то лучше работать будет

Ответить
–4

Почему про это говорится как будто это баг какойто неизвестный? Это в msdn описано и входило в часть билетов мгу по курсу операционных систем.
Ну да, приложение получало буст и есть функции апи которые этим управляют

Ответить
6

Комментарий удален по просьбе пользователя

Ответить
3

Входило. И сейчас входит судя по слайдам http://al.cs.msu.su/system/files/lect_3_4.pdf и я даже сука нашёл цитату в лекциях
Она работает в режиме, при котором минимизируется время реакции системы на запрос пользователя. В идеале, за счет того, что время ответа на запрос минимально, у пользователя должна создаваться иллюзия, что все ресурсы системы предоставлены только ему.

И про эти функции апи тоже говорилось

Ответить
5

Комментарий удален по просьбе пользователя

Ответить
0

Да похуй что там у вас сейчас, можете без билетов учиться можете вообще за посещение дипломы получать, я говорил о времени когда садовничий ещё из ума не выжил и не раздавал территорию всяким девелоперам

Ответить
23

Комментарий удален по просьбе пользователя

Ответить
3

Какое внимание к моей жопе

Ответить
0

Так ты парень?

Ответить
0

Чё не спишь?

Ответить
0

Комментарий удален по просьбе пользователя

Ответить
0

Сексист-с.

Ответить
0

Какую девушку возьмут на все мгу?

Ответить
1

Ну и понятно это до сих пор есть просто не так заметно. И в линухах это тоже есть, алё

Ответить
0

В андроидах и айОс такое есть?

Ответить
1

хз, ну думаю да, зачем бы им это вырезать из ядра полезная функция

Ответить
2

Олды помнят

Ответить
2

У меня и в XP был какой-то невменяемый баг с сетевой картой (или ее дровами), которая передавала траффик только при движении курсора.

Ответить
0

у меня был баг со звуком. когда двигал курсор из колонок доносился хруст

Ответить
0

Это вообще было общее место, много где с таким сталкивался.

Ответить
0

это не баг, а общая земля USB и звукового тракта.

Ответить
0

я юзер для меня это баг

Ответить
0

В противном случае она не будет возвращать результат не сразу, а с задержками.

Не, не, тут лишнее не

Ответить
3

А материал огонь, конечно :)

Ответить
0

Значит я был прав, когда дёргал мышкой!

Ответить
0

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

Ответить
0

почему ощущение? если выделено больше ресурсов значит отклик и работа программы был будет быстрее на деле а не по ощущениям

Ответить
0

Да вы правы. Я неточно выразился

Ответить
Обсуждаемое
Новости
Google второй раз за месяц заявила о достижении квантового превосходства. Теперь официально
В сентябре публикация компании ненадолго появлялась на сайте NASA.
Истории
От пожизненного срока до высокооплачиваемой работы в Кремниевой долине: история убийцы, ставшего в тюрьме инженером
Освободившийся спустя 22 года Захари Мур работает в технологической компании. Благодаря курсам программирования.
Новости
"Езжай к себе, ***, там и работай". Мигрант из Таджикистана пожаловался на подмосковную полицию в СК
Мигрант из Таджикистана Абдурахим Назаров, работающий в России, пожаловался в Следственный комитет на сотрудников подмосковной полиции. Об этом сообщает «Озоди». По его словам, его задержали, ссылаясь на проверку документов, а затем избили и оскорбляли.
Популярное за три дня
Интернет и мемы
F
Новости
В США мужчина преодолел 564 километра ради секса с несовершеннолетней, но она оказалась полицейским под прикрытием
Теперь ему грозит до 10 лет тюрьмы.
Новости
Китайский бизнесмен нанял киллера, тот нанял другого киллера — так заказ прошёл через пять киллеров. Всех посадили
Сага об аутсорсинге.

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovy", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfk" } } }, { "id": 6, "disable": true, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byswn", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "cndo", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223677-0", "render_to": "inpage_VI-223677-0-130073047", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=cndo&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudv", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "ccydt", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvc" } } }, { "id": 20, "label": "Кнопка в сайдбаре", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "chfbk", "p2": "gnwc" } } } ]