- Operating Systems abstract the hardware layer and present usability to end users and developers alike. (Microsoft)
- Compilers - abstracts the machine code in higher level language (IBM, Microsoft, SUN)
- Virtual Machines abstracts hardware & OS for generic machine codes running over it - (SUN - Java; Microsoft - C#)
- Virtualization technology (vmware, Citrix - xen; Microsoft - hyperV)
This is likely to grow - as people would like heterogeneous systems interworking.