Two major types of software's are-
(i) System software is responsible for managing a variety of independent hardware components so that they can work together harmoniously. Its purpose is to unburden the application software programmer from the often complex details of the particular computer being used, including such accessories as communications devices, printers, device readers, displays and keyboards, and also to partition the computer's resources such as memory and processor time in a safe and stable manner.
(ii) Programming software Programming software usually provides tools to assist a programmer in writing computer programs, and software using different programming languages in a more convenient way. The tools include: • compilers • debuggers • interpreters • linkers • text editors An Integrated development environment (IDE) is a single application that attempts to manage all these functions.