Lets begin the class by exploring the differences between application software a
ID: 3839678 • Letter: L
Question
Lets begin the class by exploring the differences between application software and system software. Most of you will probably have the bulk of your experience with application software..... but what does that mean? Can you tell me which of the following are System Software and which are Applications:
- Web Browser
- Java Run Time
- Microsoft Access Database
- Printer Driver
- Process Scheduler
- Microsoft Word
- A Windows XP VM (Virtual Machine) running on a Windows 7 machine
As a second topic I would like to get you thinking about the kernel. Years ago when I programmed in MS-DOS or Windows 3.1 I would write my application program and as part of the code I would have assembly code to access the internal registers and memory. Part of the reason was so I could make better use of the memory and another was so that I could write some graphics on the screen.
In today's general computer environment I can not do this in my application. I have to make system calls and the kernel handles these functions. Why won't Microsoft or Apple allow my application to call directly to the hardware?
Comment on another students thoughts.
Explanation / Answer
Solution:
Application software is computer software designed to help the user to perform specific tasks. Whereas, System software is computer software designed to operate the computer hardware and to provide a platform for running application software. Application Software performs in an environment which created by System/Operating System. But System Software Create his own environment to run itself and run other application. Application is not essential for a computer. But System software is essential for a computer.
Application Software in the list:
Web Browser
Java Run Time
Microsoft Access Database
Microsoft Word
System Software in the list:
Printer Driver
Windows XP VM
Process Scheduler
Reason for making system call using kernel:
There are so many complications in accessing a hardware or memory directly from an application program such no memory confliction should occur between applications. For this reason only, all hardware access activities are handled through system calls by passing the control to kernel. Moreover, now a days, many processors come involves security models such as ring model which specifies multiple privilege levels. These kind of security models restrict all application programs to use its own address space so that it cannot access or modify other running programs or the OS itself and also prevents the application from directly manipulating hardware devices. The application program will pass the system call with its privilege to the kernel. The kernel will execute the system calls based on the levels of privilege and will access the hardware to take the necessary action. In this, the application will not have the control over hardware, simply it can access kernel via system calls. The kernel in turn will process the system calls and return the output to the called application program.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.