Software ecosystem
|
A Software ecosystem refers to software components, which when combined, exist within a computer as a functioning unit. Common core components which are part of this functioning unit typically include: A kernel, a windowing system, a desktop environment, a compiler, a text editor, a web browser, an email client, a word processor and many other components depending on the purpose of this specific computer.
A vast variety of software components are available on the software market from which to select software components from. Many components with similar function may co-exist on the computer and be used for identical tasks based on user preference. Some duplicate components cannot be in use concurrently because of their specific function. The kernel is one such component.
As in an ecological ecosystem components which are weak, unreliable or are unable to adapt to changing circumstances quickly because of a lack of flexibility will often become less common overtime. Software components also evolve this way and may become effectively extinct if a more suitable replacement is found and adopted by all users.
Software components are typically Free Software, Proprietary software or some hybrid. There will be Software licensing which may affect the combination of these components into one Software ecosystem.