Design Human interfaces for Operating Systems

Since then super computers have been transformed several times, first to desktop computers, then laptops and now cutting edge tabs and pads, thus becoming widely used and an inevitable part of the human life.
However, the science behind computers is quite enthralling and it makes a person wonder how exactly a machine is able to perform such complex tasks within mere seconds. First of all it is quite clear that computers do not understand human language, or High Level Language (HLL), and at the same time, humans do not understand machine language, which is basically in binary codes. Thus, it becomes clear that between the computer and the person or user, there needs to be a translator that can translate the languages in order for both parties to understand the other. In case of computer, this is done by the program translators, which consists of assembler, compiler and interpreter. Thus, it becomes clear that by converting high level language and program language into machine language, the computers can understand what the user tries to communicate, and similarly, by converting machine language into program language or high level language, the user can make sense of what the computer is communicating. However, there still needs to be a platform where these communications can take place. This is where the operating systems of computers come into play, as it is them that provide a basic platform for the user to interact with the computer system through interface or human interface. Therefore, it becomes clear that the design of operating systems and human interfaces need to be done in a way that it enable maximum utilization to the user.
An operating system is a software program, which facilitates the management of “hardware and software resources of a computer” and performs tasks including “controlling and allocating memory,