DOS vs Windows
The followings are the points to discuss the difference between DOS and Windows and also why windows is preferable over DOS regarding GUI based interaction.
- DOS is text/console based OS. Windows is GUI based OS. DOS shell is command user interface or CLI, Windows provides graphical user interface GUI.
- DOS application does not obey any standard user navigation and user interaction protocol. Windows defines a set of standard widgets like menues, dialogs, windows, buttons, textboxes etc. which are common to all GUI based OS.
- DOS is single tasking OS. Windows is multitasking OS. User has flexibility to run more than one application at a time and can work simultaneously.
- DOS is based on 8086 16bit processor which can access upto 20bit of addess which is 1MB max. Windows is based on 386 32bit processor and can access 32bit which is 4GB or for 64bit this limit is even beyond.
CLI vs GUI
DOS works in 80x25 text-based console and the user interacts with the operating system by means of some commands. DOS has basic commands like dir, cd, type, move, del, deltree, edit, fdisk, sys, etc to manage files and folders. Basic text files can be managed. Multimedia and formatted documents cannot be used. DOS can switch video mode to VGA (640x480) and can run different DOS games.
Windows works in graphical mode and the user interacts with the operating system via GUI elements. Windows being GUI based operating system has numerous advantages.
The screen size is 1024x768 and larger so more information can be displayed at any point in time. It is easy to interact with files and folders with a mouse. Very little keyboard interactions are required to manage files and folders. Graphical and multimedia files like pictures, animation, audio, and video files can be seen or edited only in Windows. Formatted rich-edit text documents, presentations, etc can be viewed and edited. Windows can run a wide variety of games with direct rendering and DirectX interface of the graphics.
DOS application does have any standard for text-based menu navigations and interactions.
Graphical interfacing in Windows follows standard GUI design. A set of standard widgets like menus, dialogs, windows, buttons, textboxes, etc. are used in Windows which are common to all GUI-based OS.
DOS can use only the default core 0 of the CPU and the operating system is single-tasking. DOS cannot have multitasking capability.
Windows can enable multitasking facility in single-core CPU. It can even access multicore cores for multitasking. The user has the flexibility to run one application in the foreground and numerous tasks in the background. User can switch between different tasks and can interact as needed.
Resource and Memory
DOS is based on x86 16bit processor architecture which can access up to 20bit of address which is 1MB maximum range.
Windows is based on 386 32bit processor and can access 32bit which is 4GB or more using a physical address extension(36bits) up to 16GB. Windows 64bit has a maximum memory limit of several TBs.
|Command line user interface (CLI)||Graphical User Interface|
|User interaction not standard||User interaction is unified for all GUI based OS|
|Based on 8086, 16bit OS, can access upto 1MB||Based on 80386, 32bit OS, can access upto 4GB for 32bit|
About our authors: Team EQA
MFC hides WinMain in its framework and includes source file on WinMain(). This explains how framework calls global CWinApp::Initinstance() from entry WinMain.
This is constructed during global C++ objects are constructed and is already available when Windows calls the WinMain function, which is supplied by the ...
Define a custom Window class structure, Register the class name, CreateWindow, Show windows and write message get and dispatch loop statements. Define the Window CallBack procedure and write the handlers.
DispatchMessage() is a API which indirectly triggers the Window CallBack procedure. Message structure members from this function are passed to the CallBack procedure. CallBack procedure should implement event handlers depending on the need of the application.
LPARAM and WPARAM are the two parameters in Window CallBack procedure. They signifies parameters of various events. They are used in handing individual events.
We need to write WinMain and need to follow all these in a Win32 application. However we need not to write much if we are writing an application with MFC ...
Questions index C Questions C++ Questions Win32 MFC COM/DCOM DLL Questions
Compilers & Editors
Download Visual Studio Download XCode Download Visual Studio Code Android studio install sdk Eclipse installer Best C compilers IDEs
Development system setup
Windows media creation tool MSDN subscription Ubuntu virtualbox
New updated posts
Why learn C? Draw on printer Memory leaks