3 ms·
Things can go much further than just sharing a partition. But it is a shame this project died and wsl1 was abandoned. https://en.wikipedia.org/wiki/Cooperative
by molticrystal 5y ago
Things can go much further than just sharing a partition. But it is a shame this project died and wsl1 was abandoned.
https://en.wikipedia.org/wiki/Cooperative_Linux https://en.wikipedia.org/wiki/Cooperative_Linux
>The term "cooperative" is used to describe two entities working in parallel. In effect Cooperative Linux turns the two different operating system kernels into two big coroutines. Each kernel has its own complete CPU context and address space, and each kernel decides when to give control back to its partner.
>However, while both kernels theoretically have full access to the real hardware, modern PC hardware is not designed to be controlled by two different operating systems at the same time. Therefore, the host kernel is left in control of the real hardware and the guest kernel contains special drivers that communicate with the host and provide various important devices to the guest OS. The host can be any OS kernel that exports basic primitives that allow the Cooperative Linux portable driver to run in CPL0 mode (ring 0) and allocate memory.
- samtheprogram 5y agoThank you for bringing back this memory. As a child who had recently installed Linux for the first time, I saw someone presenting at Bentley Systems using CoLinux and have forever wondered what it was (I wasn’t able to speak to them directly nor was it related to the presentation they gave). I dove into virtual machines at the time thinking it was just some seamless graphical sharing and a wallpaper to show it off, but seeing the logo it was definitely this.
- rjzzleep 5y agoI remember using it. Some people were version controlling the win registry and system dll folders. Why did it die?
- foepys 5y agoOne reason was that it was really, really slow when accessing the file system.
- Volundr 5y agoI used CoLinux early in my career. It was great! We had a number of projects that needed Visual Studio, but anything Ruby was just so much better using Linux. VMs were an option but having to context switch between what window I have what open in, plus is it in the VM or my main machine meant I was constantly losing track and having to search for things. CoLinux made it seamless. Really sad to see it's been abandoned. WSL looks pretty good, but not the seamless integration CoLinux had.
- naikrovek 5y agoI don't think WSL1 was abandoned, was it? last I heard it was supported and meant to complement WSL2. I know of people who need WSL1 because WSL2 doesn't meet their needs in some specific ways. so, yeah, if you know where that's documented I'd like to be able to show that to said colleagues.
- Hello71 5y agoin classic Microsoft fashion [0], WSL1 is not officially abandoned, but seems to be planned to be left in half-finished mode forever. bugs are closed as "fixed-in-wsl2" without further comment: https://github.com/microsoft/WSL/issues?q=label%3Afixed-in-wsl2 https://github.com/microsoft/WSL/issues?q=label%3Afixed-in-w..., including serious bugs causing incorrect computations: https://github.com/microsoft/WSL/issues/830 https://github.com/microsoft/WSL/issues/830. [0] see the dozens of official Windows GUI frameworks: https://news.ycombinator.com/item?id=16736720 https://news.ycombinator.com/item?id=16736720 (and since then, it's gotten worse: https://www.google.com/search?hl=en&q=uwp%20deprecated https://www.google.com/search?hl=en&q=uwp%20deprecated)
- Railsify 5y agoI'm hoping one day I can use wsl2 and virtualbox at the same time without suffering from cripplingly bad performance in vbox.
- minedwiz 5y agoSadly, that one seems to be on vbox. Windows exposes an API that lets a VMM like virtualbox create vCPUs on top of Hyper-V (https://docs.microsoft.com/en-us/virtualization/api/hypervisor-platform/hypervisor-platform https://docs.microsoft.com/en-us/virtualization/api/hypervis...). VMWare workstation and QEMU have added support for it and it works quite well, very close to native. I know vbox did implement it, but it seems to work not nearly as well. QEMU might work for your usecase though.
- Brave-Steak 5y agoWSL1 was one of the coolest things I've ever seen Windows do and I'm so disappointed that it's not being worked on anymore. WSL2 seems like such a massive step backwards by comparison. Sure, it's more performant, but it's just running a VM on a hypervisor. I could've done that with any number of other tools available. WSL1 was unique (afaik).
- Wowfunhappy 5y agoThis sounds a lot like “cooperative multitasking”—I thought we were pretty convinced that’s not a great idea? (e.g. Classic Mac OS)
- gkbrk 5y agoCooperative multitasking actually works really well if the system is designed for it. It has many performance and reliability benefits. It's mostly used in embedded or IOT systems, or inside a single application with async/await, but it can be used for the whole OS as well. If the system and its built-in applications are designed to take advantage of it, and any external application is run inside a VM to make sure it doesn't misbehave, cooperative multitasking works great.