Windows single-tasking VS Linux multi-tasking
Enolalila
Posted messages
194
Status
Membre
-
ElementW Posted messages 5690 Status Contributeur -
ElementW Posted messages 5690 Status Contributeur -
Hello! I'm opening this topic to ask a simple question :)
It is said that Linux is a multitasking system, which makes it a more powerful OS than Windows which is single-task.
Yet, on Windows, we can do several things at once: watching a video, browsing the internet, etc. So if Windows is single-task, how is it possible to do multiple things at the same time?
Configuration: Windows / Opera Next 44.0.2510.1449
It is said that Linux is a multitasking system, which makes it a more powerful OS than Windows which is single-task.
Yet, on Windows, we can do several things at once: watching a video, browsing the internet, etc. So if Windows is single-task, how is it possible to do multiple things at the same time?
Configuration: Windows / Opera Next 44.0.2510.1449
1 réponse
I don't know where you saw that, but Windows is multitasking; it was during the MS-Dos era that it was single-tasking, so one program had to finish before another could start. Now it's multitasking since it allocates execution time to each program, and they run like that. So we think everything is working at the same time, but in reality, it's just each program running one after the other, and it's so fast that we think it's simultaneous.
For example, I am currently using Antergos (Arch Linux) whereas before I was using Windows 10. For booting up and certain applications, I notice it's faster, but then the problem with Linux distributions is hardware support. For instance, my GPU is very poorly supported, and I notice a significant drop in performance compared to Windows.
A CPU core can only execute one thread of instructions at a time, and it is the role of the kernel (Linux or NT) to allocate this time appropriately, taking into account the physical capabilities of the processor being used.
Being widely used on servers where performance is a key element, Linux has undergone many modifications and configurations to optimize this resource allocator known as the CPU scheduler, to the point that it has been changed several times, and can even be changed and configured on the fly (see this superuser@SO question; one of the best schedulers for desktops is , but it is experimental).
The NT kernel has obviously undergone many modifications in this regard, but it remains a kernel designed for a desktop environment where latency is less important and the impression of responsiveness is crucial, so it does not necessarily use the CPU optimally.
It's a matter of priorities and objectives more than anything else. Linux explicitly aims for performance, but Windows does not.