Recently finished working on another customer issue where an application working for a few years suddenly started failing. It was an update they recently made which broke their app.This got me thinking about the current state and future of software development.In this respect the current trend towards SOA looks especially important; the services based development lets you reuse code without letting that code pollute your space. This lets the service control their environment.However , there could be more than one service running on a machine and an update to some other service could effect another one ,bringing us back to the same problem , even with this though your exposure is still reduced however ,it is not enough.
I believe in this concept of a minimal OS, I think today's server OS has become to huge and fat, the server OS comes loaded with a number of services and applications which we don't need. It increases our exposure to problems like security and as well as others like updates. . All this makes us to continually update the OS and thus changing the environment in which the application was tested and deployed. The frequency with which we update our 24x7 environment is probably unmatched in any other 24x7 industry.
So the idea of minimal OS is that the OS just provides the minimum services to run an application, something like a micro kernel and everything else is a service either on same machine or a different machine. These would be devices running a dedicated service and or a set of services. The unit of deployment will be a device and not software. An application would essentially be a number of such devices talking to each other. This probably sounds like a glorified router and probably that is what it is...By controlling the number of applications that run on the device we reduce our efforts in testing , make locking it down easier and just reduce the exposure to a large extent.
[These postings are provided "AS IS" with no warranties, and confer no rights.This site represents my views only and not the views of my employer.]