Phần mềm được chia thành hai loại: phần mềm hệ thống và phần mềm ứng dụng,phần mềm hệ thống được coi là phần mêm mà máy tính sử dụng để quản lý các tài nguyên bên trong và bên ngoài của nó.phần mềm hệ thống cho phép phần mềm ứng dụng tương tác với máy tính ,phần mềm hệ thônggs bao gồm một vài chương trình mà trong đó hệ điều hành la quan trọng nhất,một số hệ điều hành được thừa nhận là chuẩn vì chúng có nền tảng phần mềm tốt,các nhà sản xuất phần mềm cũng thường có khuynh hướng mở rộng các gói phần mềm ứng dụng cho các máy chạy dưới sự điều khiển của một hệ điều hành được sử dụng rộng rãi