Artem Crowr
октябрь 2015.
365

Почему программы "зависают"? Что происходит внутри системы в это время с точки зрения программного кода? И возможно ли раз и навсегда устранить эту проблему?

Ответить
Ответить
Комментировать
0
Подписаться
1
1 ответ
Поделиться

Зависать программы могут по разным причинам: недостаточно оперативной памяти (обычно после нескольких минут виса программа закрывается), программа обращается к битому файлу, запущенно слишком много процессов и процессору не хватает мощности для уделения временивсем сразу...

Хоть соврешенные операционные системы и называют многозадачными, но на самом деле это не так. В один промежуток времени процессором обрабатывается только 1 процесс. После определенного промежутка времени, процессор переключается на другой процесс и т.д. Это происходит настолько быстро, что для нас создается иллюзия, будто все процессы работают одновременно. Какому процессу и сколько уделить времени определяется приоритетом в системе. Существуют много различных планировщиков задач, которые распределяют процессор на все задачи. Вообще это довольная обширный вопрос и ответить на него в полной мере в рамках этого ответа очень сложно...

Мне кажется, что полностью решить вопрос зависания не получится. Слишком много разных факторов, вызывающие разные проблемы, приводящие к зависанию... Однако же, прогресс не стоит на месте, и кто знает, может уже лет через 5 мы и забудем про все эти зависания и тормоза.

11
Прокомментировать
Ответить