Чому програми 'зависають'? Що відбувається всередині системи в цей час з точки зору програмного коду? І чи можливо раз і назавжди усунути цю проблему?

зависає програми можуть з різних причин: недостатньо оперативної пам’яті (зазвичай після декількох хвилин вису програма закривається), програма звертається до битому файлу, запущено занадто багато процесів і процесору не вистачає потужності для приділення временівсем відразу…

Хоч соврешенно операційні системи і називають багатозадачними, але насправді це не так. В один проміжок часу процесором обробляється тільки 1 процес. Після певного проміжку часу, процесор перемикається на інший процес і т. д. Це відбувається настільки швидко, що для нас створюється ілюзія, ніби все процеси працюють одночасно. Якому процесу і скільки приділити часу визначається пріоритетом в системі. Існує багато різних планувальників завдань, які розподіляють процесор на всі завдання. Взагалі це задоволена великий питання і відповісти на нього вповною мірою в рамках цієї відповіді дуже складно…

Мені здається, що повністю вирішити питання зависання не вийде. Занадто багато різних факторів, що викликають різні проблеми, що призводять до зависання… Однак же, прогрес не стоїть на місці, і хто знає, може вже років через 5 ми і забудемо про всі ці зависання і гальма.



ЩЕ ПОЧИТАТИ