**coLinux** olarak kısaltılan **Cooperative Linux**, Microsoft Windows ve Linux çekirdeğinin aynı makinede aynı anda paralel çalışmasına olanak sağlayan bir yazılımdır.

Cooperative Linux, Cooperative Virtual Machine (CVM) kavramını kullanır. Geleneksel sanal makinelerin aksine, CVM, ana bilgisayar işletim sisteminde zaten var olan kaynakları paylaşır. Geleneksel VM ana bilgisayarlarında, kaynaklar her (konuk) işletim sistemi için sanallaştırılır. CVM, her iki işletim sistemine de ana makine üzerinde tam kontrol sağlarken, geleneksel VM, her konuk işletim sistemini gerçek makineye erişmek için ayrıcalıksız bir duruma ayarlar.

Genel bakış
-----------

 Windows'ta çalışan synaptik ve nautilus
"Kooperatif" terimi, paralel olarak çalışan iki kuruluşu tanımlamak için kullanılır. Aslında Cooperative Linux, iki farklı işletim sistemi çekirdeğini iki büyük koroutine dönüştürür. Her çekirdeğin kendi eksiksiz CPU bağlamı ve adres alanı vardır ve her çekirdek, kontrolü ne zaman ortağına geri vereceğine karar verir.

Bununla birlikte, her iki çekirdek teorik olarak gerçek donanıma tam erişime sahipken, modern PC donanımı aynı anda iki farklı işletim sistemi tarafından kontrol edilecek şekilde tasarlanmamıştır. Bu nedenle, ana bilgisayar çekirdeği gerçek donanımın kontrolünde bırakılır ve konuk çekirdeği, ana bilgisayarla iletişim kuran ve konuk işletim sistemine çeşitli önemli aygıtlar sağlayan özel sürücüler içerir. Ana bilgisayar, Cooperative Linux taşınabilir sürücüsünün CPL0 modunda (ring 0) çalışmasına ve bellek ayırmasına izin veren temel temel öğeleri dışa aktaran herhangi bir işletim sistemi çekirdeği olabilir.

Tarih
-----

Dan Aloni, Kooperatif Linux'un geliştirilmesine, User-mod Linux ile benzer çalışmalara dayanan bir araştırma projesi olarak başladı. Gelişmeyi 25 Ocak 2004'te duyurdu. Temmuz 2004'te Linux Sempozyumu'nda bir bildiri sundu. Kaynak, GNU Genel Kamu Lisansı altında yayımlandı. Diğer geliştiriciler o zamandan beri yazılıma çeşitli yamalar ve eklemeler yaptı.

Karşılaştırma
-------------

Cooperative Linux, genellikle konuk işletim sistemini ana bilgisayar çekirdeğinden daha az ayrıcalıklı bir modda çalıştırarak ve tüm kaynakların ana bilgisayar çekirdeği tarafından delege edilmesini sağlayarak çalışan tam x86 sanallaştırmadan önemli ölçüde farklıdır. Buna karşılık, Cooperative Linux, kaynakları NT çekirdeğiyle paylaşma sorumluluğunu üstlendiği ve yarış koşullarını başlatmadığı için *Cooperative* olan özel olarak değiştirilmiş bir Linux çekirdeği çalıştırır.

Dağıtım
-------

Cooperative Linux yamasındaki değişikliklerin çoğu, bu yazının yazıldığı sırada Cooperative için desteklenen tek mimari olan i386 ağacındadır. Diğer değişiklikler çoğunlukla sanal sürücülerin eklenmesidir: cobd (blok cihazı), conet (ağ) ve cocon (konsol). i386 ağacındaki değişikliklerin çoğu, başlatma ve kurulum kodunu içerir. Kooperatif Linux çekirdeği tasarımının bir amacı, bağımsız i386 çekirdeğine mümkün olduğunca yakın kalmaktır, böylece tüm değişiklikler mümkün olduğunca yerelleştirilir ve en aza indirilir.

coLinux paketi, Linux çekirdeğinin bir bağlantı noktasını ve bir sanal ağ aygıtı kurar ve Windows 2000 veya Windows XP gibi Windows işletim sisteminin bir sürümü altında aynı anda çalışabilir. VMware gibi bir sanal makine kullanmaz.

Debian, Ubuntu, Fedora ve Gentoo özellikle coLinux kullanıcıları arasında popülerdir.

Sanal donanımın oldukça sıra dışı yapısından dolayı, Linux dağıtımlarını coLinux altında kurmak genellikle zordur. Bu nedenle, kullanıcılar çoğu durumda ya gerçek bir bölümdeki mevcut bir Linux kurulumunu ya da proje tarafından dağıtılan hazır bir dosya sistemi görüntüsünü kullanır. Dosya sistemi görüntüleri, normal bir Linux sisteminin görüntülerini almak, kurulumcuları garip donanımla çalıştırmanın yollarını bulmak, paket yöneticisini kullanarak kurulumları elle oluşturmak veya sadece yum ve apt gibi araçları kullanarak mevcut görüntüleri yükseltmek gibi çeşitli yöntemlerle yapılır. Güncel bir dosya sistemi görüntüsü elde etmenin daha kolay bir yolu, Linux'u kurmak için QEMU'yu kullanmak ve coLinux wiki'de açıklandığı gibi ilk 63 512 baytlık bloğu çıkararak görüntüyü "dönüştürmektir".

coLinux'un yerel grafik donanımına erişimi olmadığından, X Penceresi veya X Sunucuları doğrudan coLinux altında çalışmayacaktır, ancak biri yükleyebilir. Windows altında Cygwin/X veya Xming gibi bir X Sunucusu ve KDE veya GNOME ve hemen hemen tüm diğer Linux uygulamalarını ve dağıtımlarını kullanın. Bu sorunların tümü, Ubuntu tabanlı andLinux veya Slackware tabanlı TopologiLinux gibi coLinux tabanlı dağıtımlar kullanılarak giderilir.

Emüle edilmiş donanım
---------------------

* TAP, PCAP, NDIS ve SLiRP üzerinden Ethernet ağı.

Sınırlamalar
------------

* Henüz 64 bit Windows veya Linux'u desteklememektedir (veya 4 GB'den fazla bellek kullanmamaktadır), ancak topluluk tarafından bir bağlantı noktası geliştirme aşamasındadır. Bir sponsor limanı tamamlamaya istekliydi, ancak iş iptal edildi.
* Çoklu işlemci (SMP) desteği yok. Linux uygulamaları ve temel alınan çekirdek yalnızca bir CPU kullanabilir.

Ayrıca bakınız
--------------

* Win32-loader
* Platform sanallaştırma
* Platform sanallaştırma yazılımının karşılaştırılması
* Cygwin
* MSYS
* Wubi (kurucu)
* Longene
* Chroot
* Windows Subsystem for Linux

Kaynakça
--------

1. ↑  "Arşivlenmiş kopya". 13 Mayıs 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 31 Mayıs 2023.
2. ↑  "coLinux main website". 19 Mayıs 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 13 Nisan 2004.
3. ↑  "coLinux main page". 4 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 13 Nisan 2004.
4. ↑  "Open source contributions | Dan Aloni". *blog.aloni.org*. 30 Ocak 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 8 Ocak 2022.
5. ↑  "Cooperative Linux Active Development Team Members". *www.colinux.org*. 19 Şubat 2004 tarihinde kaynağından arşivlendi. Erişim tarihi: 8 Ocak 2022.
6. ↑  "Dan Aloni announces Cooperative Linux". 27 Ekim 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Eylül 2022.
7. ↑  "Dan Aloni paper presented July 2004 at Linux Symposium" (PDF). 30 Eylül 2018 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 30 Mart 2008.
8. ↑  Aloni, Dan (17 Kasım 2021), *da-x/colinux*, 8 Ocak 2022 tarihinde kaynağından arşivlendi, erişim tarihi: 8 Ocak 2022
9. ↑  "64 bit development information and resources". 20 Eylül 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Eylül 2022.
10. ↑  "Status of sponsored 64 bit port". 1 Aralık 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2017.
11. ↑  "coLinux FAQ". 20 Eylül 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Eylül 2022.

Dış bağlantılar
---------------

* Resmî site Vikiveri ögesini düzenle
* Cooperative Linux on SourceForge
* coLinux on GitHub 20 Eylül 2022 tarihinde Wayback Machine sitesinde arşivlendi.
* Virtualization with coLinux at the Wayback Machine (archived 2008-02-03)
* speedLinux on SourceForge
* Portable Ubuntu Remix on SourceForge

| * g
* t
* d
Sanallaştırma yazılımları |
| --- |
| Platform sanallaştırma yazılımları karşılaştırması |
| Donanım(hipervizörler) | 

|  |  |
| --- | --- |
| Yerel | 
* Adeos
* CP/CMS
* Hyper-V
* KVM
	+ oVirt
	+ Red Hat Virtualization
* LDoms / Oracle VM Server for SPARC
* Logical partition (LPAR)
* LynxSecure
* PikeOS
* Proxmox VE
* QNX
* SIMMON
* VMware ESXi
	+ VMware vSphere
	+ vCloud
* VMware Infrastructure
* Xen
	+ Oracle VM Server for x86
	+ XenServer
* XtratuM
* z/VM

 |
| Barındırılan | 

|  |  |
| --- | --- |
| Uzmanlaşmış | 
* Basilisk II
* Bochs
* Cooperative Linux
* DOSBox
* DOSEMU
* PCem
* PikeOS
* SheepShaver
* SIMH
* Windows on Windows
	+ Virtual DOS machine
* Win4Lin

 |
| Bağımsız | 
* bhyve
* Microsoft Virtual Server
* Parallels Workstation (Extreme)
* Parallels Desktop for Mac
* Parallels Server for Mac
* PearPC
* QEMU
* VirtualBox
* Virtual Iron
* VMware Fusion
* VMware Server
* VMware Workstation (Player)
* Microsoft Virtual PC

 |

 |
| Araçlar | 
* Ganeti
* System Center Virtual Machine Manager
* Sanal Makine Yöneticisi

 |

 |
| İşletimsistemi | 

|  |  |
| --- | --- |
| İşletim sistemi konteynerleri | 
* FreeBSD jail
* iCore Virtual Accounts
* Linux-VServer
* Linux Containers
* OpenVZ
* Solaris Containers
* Virtuozzo
* Workload Partitions

 |
| Uygulama konteynerleri | 
* Docker
* lmctfy
* rkt

 |
| Sanal çekirdek mimarileri | 
* Rump kernel
* User-mode Linux
* vkernel

 |
| İlgili çekirdek özellikleri | 
* BrandZ
* cgroups
* chroot
* namespaces
* seccomp

 |
| Orkestrasyon | 
* Amazon ECS
* Kubernetes
* OpenShift

 |

 |
| Masaüstü | 
* Citrix Virtual Apps
* Citrix Virtual Desktops
* Uzak Masaüstü Hizmetleri
* VMware Horizon

 |
| Uygulama | 
* Ceedo
* Citrix Virtual Apps
* Dalvik
* InstallFree
* Microsoft App-V
* Remote Desktop Services
* Symantec Workspace Virtualization
* Turbo
* VMware ThinApp
* ZeroVM

 |
| Ağ | 
* Distributed Overlay Virtual Ethernet (DOVE)
* Ethernet VPN (EVPN)
* NVGRE
* Open vSwitch
* Virtual security switch
* Virtual Extensible LAN (VXLAN)

 |
| Ayrıca bkz. | 
* BlueStacks

 |
| Ayrıca bkz.: Emülatörler listesi, Bilgisayar sistemi emülatörleri listesi |