Just some thoughts that arose as I skipped along the web...
With the idea of using Pharo in the cloud, I was thinking of how PharoNOS[1] is basing off top of the Linux kernel, but the examples indicate its operating in User Mode. So I was wondering about performance being greater[2] if the CogVM ran in Kernel Mode. However maybe this could get tangled in the GPL license of the kernel.
Now I believe FreeBSD/NetBSD license is compatible with COG's MIT license, so that seems a better option for eliminating layers of the operating system. They both[3][4] have pre-built Amazon Machine Images to run on EC2, as well as instructions[5] to build your own AMI. So potentially we could build an AMI with the CogVM linked to the FreeBSDKernel operating in Kernel Mode, with no User Mode. The lack of direct access to memory from the Image, and probably single application focus should be sufficient security to forgo User Mode, and run faster.
But we could go a step further. Runing in the cloud relies heavily on virtualisation, and for performance[6], most likely on the OS's paravirtualisation interface - to Xen for example. So from Cog, why not interface direct to the Xen FrontEndDriver[7] and eliminate the DomU operating system all together. What I understand from [6] is that Xen's paravirtualisation hooks makes it much easier to boot, than booting on the bare metal of a fully-virtualised system. So the former seems more achievable than the latter (which was the only option in years past), and also be more portable as technology evolves, to any platform Xen runs on.
Squeak/Pharo on Cog-Xen could be a good choice for a Cloud Operating System[8]. Maybe a good student research project?
cheers -ben
[1] http://pillarhub.pharocloud.com/hub/mikefilonov/pharonos [2] http://blog.codinghorror.com/understanding-user-and-kernel-mode/ [3] http://www.daemonology.net/freebsd-on-ec2/ [4] http://wiki.netbsd.org/amazon_ec2/amis/ [5] http://wiki.netbsd.org/amazon_ec2/build_your_own_ami/ [6] http://wiki.xen.org/wiki/Virtualization_Spectrum [7] http://wiki.xen.org/wiki/FrontendDriver [8] http://wiki.xen.org/wiki/Cloud_Operating_Systems
Thanks for share. I away of Pharo world so don’t know about Pharo NOS. This days i playing with a Cuis fork under 900 classes and under 4 Mb. What you could do wit it? See the system running in www.squeakros.org user: visita pass: (blank here) It’s a combination of swiki/blog and exploration of how to build web 2.0 apps without Node, npm, Bower, Grunt ,nothing. Only HTML5, CSS, JavaScript powered by my Cuis fork. I want to have a NOS version of it, wish work together exchanging feedback ?
-- Edgar De Cleene @morplenauta en twitter Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On Saturday, December 20, 2014 at 1:08 AM, Ben Coman wrote:
Just some thoughts that arose as I skipped along the web...
With the idea of using Pharo in the cloud, I was thinking of how PharoNOS[1] is basing off top of the Linux kernel, but the examples indicate its operating in User Mode. So I was wondering about performance being greater[2] if the CogVM ran in Kernel Mode. However maybe this could get tangled in the GPL license of the kernel.
Now I believe FreeBSD/NetBSD license is compatible with COG's MIT license, so that seems a better option for eliminating layers of the operating system. They both[3][4] have pre-built Amazon Machine Images to run on EC2, as well as instructions[5] to build your own AMI. So potentially we could build an AMI with the CogVM linked to the FreeBSDKernel operating in Kernel Mode, with no User Mode. The lack of direct access to memory from the Image, and probably single application focus should be sufficient security to forgo User Mode, and run faster.
But we could go a step further. Runing in the cloud relies heavily on virtualisation, and for performance[6], most likely on the OS's paravirtualisation interface - to Xen for example. So from Cog, why not interface direct to the Xen FrontEndDriver[7] and eliminate the DomU operating system all together. What I understand from [6] is that Xen's paravirtualisation hooks makes it much easier to boot, than booting on the bare metal of a fully-virtualised system. So the former seems more achievable than the latter (which was the only option in years past), and also be more portable as technology evolves, to any platform Xen runs on.
Squeak/Pharo on Cog-Xen could be a good choice for a Cloud Operating System[8]. Maybe a good student research project?
cheers -ben
[1] http://pillarhub.pharocloud.com/hub/mikefilonov/pharonos [2] http://blog.codinghorror.com/understanding-user-and-kernel-mode/ [3] http://www.daemonology.net/freebsd-on-ec2/ [4] http://wiki.netbsd.org/amazon_ec2/amis/ [5] http://wiki.netbsd.org/amazon_ec2/build_your_own_ami/ [6] http://wiki.xen.org/wiki/Virtualization_Spectrum [7] http://wiki.xen.org/wiki/FrontendDriver [8] http://wiki.xen.org/wiki/Cloud_Operating_Systems
Hi Ben,
On Dec 19, 2014, at 8:08 PM, Ben Coman btc@openInWorld.com wrote:
Just some thoughts that arose as I skipped along the web...
With the idea of using Pharo in the cloud, I was thinking of how PharoNOS[1] is basing off top of the Linux kernel, but the examples indicate its operating in User Mode. So I was wondering about performance being greater[2] if the CogVM ran in Kernel Mode. However maybe this could get tangled in the GPL license of the kernel.
Now I believe FreeBSD/NetBSD license is compatible with COG's MIT license, so that seems a better option for eliminating layers of the operating system. They both[3][4] have pre-built Amazon Machine Images to run on EC2, as well as instructions[5] to build your own AMI. So potentially we could build an AMI with the CogVM linked to the FreeBSDKernel operating in Kernel Mode, with no User Mode. The lack of direct access to memory from the Image, and probably single application focus should be sufficient security to forgo User Mode, and run faster.
But we could go a step further. Runing in the cloud relies heavily on virtualisation, and for performance[6], most likely on the OS's paravirtualisation interface - to Xen for example. So from Cog, why not interface direct to the Xen FrontEndDriver[7] and eliminate the DomU operating system all together. What I understand from [6] is that Xen's paravirtualisation hooks makes it much easier to boot, than booting on the bare metal of a fully-virtualised system. So the former seems more achievable than the latter (which was the only option in years past), and also be more portable as technology evolves, to any platform Xen runs on.
Squeak/Pharo on Cog-Xen could be a good choice for a Cloud Operating System[8]. Maybe a good student research project?
This sounds really cool, but could you analyse a bit further?
- what key economic and managerial benefits accrue from this configuration?
- what infrastructure is missing? (e.g. what key drivers need implementing?)
cheers -ben
[1] http://pillarhub.pharocloud.com/hub/mikefilonov/pharonos [2] http://blog.codinghorror.com/understanding-user-and-kernel-mode/ [3] http://www.daemonology.net/freebsd-on-ec2/ [4] http://wiki.netbsd.org/amazon_ec2/amis/ [5] http://wiki.netbsd.org/amazon_ec2/build_your_own_ami/ [6] http://wiki.xen.org/wiki/Virtualization_Spectrum [7] http://wiki.xen.org/wiki/FrontendDriver [8] http://wiki.xen.org/wiki/Cloud_Operating_Systems
Eliot (phone)
vm-dev@lists.squeakfoundation.org