Types of Software
The three broad categories every piece of software falls into.
Types of Software
Software computer programs और instructions (निर्देशों) का एक collection (संग्रह) है, जो computer को यह बताता है कि उसे कौन-सा कार्य करना है और उसे कैसे करना है। Computer hardware स्वयं कोई meaningful task नहीं कर सकता जब तक उसे software के माध्यम से आवश्यक instructions न दिए जाएँ।
What is Software?
Software computer system का वह भाग है जिसे हम सामान्यतः physically touch (छू) नहीं कर सकते। यह instructions और programs के रूप में मौजूद रहता है और hardware resources का उपयोग करके विभिन्न कार्यों को पूरा करता है।
Example: Windows, Linux, MS Word, web browser, media player और antivirus software सभी software के उदाहरण हैं।
Software को उसके purpose और function के आधार पर अलग-अलग categories में बाँटा जा सकता है। Computer Science में software को मुख्य रूप से System Software और Application Software में समझा जाता है। इसके अतिरिक्त Programming Software और Utility Software जैसी categories भी महत्वपूर्ण हैं।
Classification of Software
Software को उसके कार्य और उपयोग के आधार पर निम्नलिखित प्रमुख categories में समझा जा सकता है:
- System Software
- Application Software
- Programming Software
- Utility Software
1. System Software
System Software वह software है जो computer hardware और अन्य software के बीच interface (मध्यस्थ) का कार्य करता है। यह computer के hardware resources को manage करता है और दूसरे programs को execute होने के लिए आवश्यक environment प्रदान करता है।
System Software के बिना user applications के लिए computer hardware का प्रभावी उपयोग करना कठिन होगा।
Examples: Operating Systems, Device Drivers, Firmware और Language Translators आदि।
Types of System Software
System Software के प्रमुख प्रकार निम्नलिखित हैं:
- Operating System
- Device Drivers
- Language Translators
- Firmware
1.1 Operating System
Operating System (OS) एक system software है जो computer के hardware और software resources को manage करता है तथा user और computer hardware के बीच interface प्रदान करता है।
Operating System के उदाहरण हैं Windows, Linux, macOS, Android आदि।
Operating System के functions में process management, memory management, file management, device management और security management शामिल हैं।
1.2 Device Driver
Device Driver एक विशेष प्रकार का system software है जो Operating System को किसी hardware device के साथ communicate (संचार) करने में सहायता करता है।
Different hardware devices के लिए अलग-अलग drivers की आवश्यकता हो सकती है।
Examples: Printer Driver, Graphics Driver, Audio Driver आदि।
1.3 Language Translator
Computer की machine language को छोड़कर अधिकांश programming languages में लिखे गए instructions को computer द्वारा directly execute नहीं किया जा सकता। Language Translator ऐसे programs हैं जो source program या instructions को machine-understandable form में translate करने में सहायता करते हैं।
Language Translators के प्रमुख प्रकार हैं:
- Assembler
- Compiler
- Interpreter
Assembler
Assembler assembly language में लिखे गए program को machine language या machine-understandable code में translate करता है।
Compiler
Compiler एक translator program है जो high-level programming language में लिखे source program को target या machine-oriented code में translate करता है। सामान्यतः compiler पूरे source program को analyze करके translation करता है और errors की information प्रदान करता है।
Examples of compiled languages: C और C++ जैसी languages को सामान्यतः compiler के माध्यम से compile किया जाता है।
Interpreter
Interpreter source program को execute करते समय instructions को translate और execute करने का कार्य करता है। यह program के execution के दौरान translation करता है और error मिलने पर execution उस point पर रुक सकता है।
Example: Python programs को सामान्यतः interpreter-based execution environment में execute किया जाता है।
Compiler and Interpreter
| Compiler | Interpreter |
|---|---|
| Source program का translation compilation stage में करता है। | Execution के दौरान program को translate और execute करता है। |
| Compilation के बाद executable या target code उपलब्ध हो सकता है। | आमतौर पर अलग executable machine-code file आवश्यक नहीं होती। |
| Errors की जानकारी compilation process के दौरान मिलती है। | Execution के दौरान error मिलने पर program आगे execute नहीं कर सकता। |
1.4 Firmware
Firmware ऐसा software है जो hardware device के साथ closely associated होता है और device के basic operations को control करने में सहायता करता है। यह सामान्यतः non-volatile memory में stored रहता है ताकि device को power off होने के बाद भी instructions उपलब्ध रहें।
Examples: Computer का UEFI firmware, router firmware और अन्य embedded devices में मौजूद firmware।
2. Application Software
Application Software वह software है जिसे user की specific needs या tasks को पूरा करने के लिए बनाया जाता है। यह system software के ऊपर run करता है और user को practical work करने की सुविधा देता है।
Examples: Word processor, spreadsheet software, presentation software, web browser, media player और image editing software आदि।
Types of Application Software
Application Software को broadly दो categories में समझा जा सकता है:
- General-Purpose Application Software
- Special-Purpose Application Software
2.1 General-Purpose Application Software
General-Purpose Application Software ऐसे applications हैं जिन्हें सामान्य और विभिन्न प्रकार के users के common tasks के लिए उपयोग किया जा सकता है।
Examples: Word processors, spreadsheets, presentation software, web browsers और media players आदि।
| Software Category | Common Use |
|---|---|
| Word Processor | Documents create और edit करना |
| Spreadsheet | Data calculation और analysis करना |
| Presentation Software | Slides और presentations बनाना |
| Web Browser | Internet और websites access करना |
| Media Player | Audio और video चलाना |
2.2 Special-Purpose Application Software
Special-Purpose Application Software किसी particular task या specific requirement को पूरा करने के लिए designed software होता है।
Examples: Railway reservation system, banking software, hospital management system, school management system और payroll system आदि।
Special-Purpose: किसी specific task या organization की आवश्यकता के लिए।
3. Programming Software
Programming Software ऐसे tools और programs का collection है जो programmers को software develop, test और debug करने में सहायता करते हैं।
इनका उपयोग source code लिखने, compile करने, execute करने और errors identify करने के लिए किया जा सकता है।
Examples: Code editors, compilers, interpreters, debuggers और Integrated Development Environments (IDEs)।
Integrated Development Environment (IDE)
IDE एक software environment है जिसमें programming के लिए कई tools एक ही स्थान पर उपलब्ध होते हैं। इसमें code editor, compiler या interpreter, debugger और अन्य development tools शामिल हो सकते हैं।
Examples: Visual Studio, Eclipse, IntelliJ IDEA और Code::Blocks आदि।
4. Utility Software
Utility Software ऐसे software programs हैं जो computer system के maintenance, protection, optimization और management में सहायता करते हैं।
Utility software system को अधिक efficiently maintain करने और कुछ specific maintenance tasks perform करने में उपयोगी होते हैं।
Examples: Antivirus software, backup tools, file compression tools, disk management utilities आदि।
Examples of Utility Software
| Utility | Purpose |
|---|---|
| Antivirus | Malicious software को detect और remove करने में सहायता |
| Backup Utility | Important data की backup copy बनाने में सहायता |
| Compression Utility | Files को compress या archive करने में सहायता |
| Disk Utility | Storage और disk-related tasks को manage करने में सहायता |
System Software and Application Software
System Software और Application Software दोनों computer system के महत्वपूर्ण parts हैं, लेकिन इनके उद्देश्य अलग-अलग होते हैं।
| System Software | Application Software |
|---|---|
| Computer system और hardware resources को manage करने में सहायता करता है। | User के specific tasks को पूरा करने के लिए उपयोग होता है। |
| यह system के operation के लिए आवश्यक होता है। | यह user की आवश्यकता के अनुसार install और use किया जाता है। |
| Hardware और applications के बीच interface प्रदान करता है। | User को practical tasks perform करने की सुविधा देता है। |
| Examples: Operating System, Device Driver | Examples: Word Processor, Web Browser |
System Software, Application Software and Utility Software
| Type | Main Purpose | Examples |
|---|---|---|
| System Software | System और hardware resources को manage करना | Operating System, Device Driver |
| Application Software | User के specific tasks करना | Word Processor, Browser |
| Utility Software | System maintenance और protection | Antivirus, Backup Utility |
| Programming Software | Programs develop और debug करना | Compiler, IDE, Debugger |
Software and Hardware
Hardware computer के physical components (भौतिक घटक) हैं जिन्हें हम देख और touch कर सकते हैं, जबकि Software programs और instructions का collection है जो hardware को कार्य करने के लिए निर्देश देता है। दोनों एक-दूसरे पर निर्भर होते हैं।
| Hardware | Software |
|---|---|
| Physical components होते हैं। | Programs और instructions होते हैं। |
| इन्हें physically touch किया जा सकता है। | इन्हें physically touch नहीं किया जा सकता। |
| Example: Keyboard, Monitor, CPU | Example: Windows, Browser, MS Word |
| Hardware software के instructions को execute करता है। | Software hardware को instructions प्रदान करता है। |
Importance of Software
Software computer system को उपयोगी बनाता है। Hardware केवल physical resources उपलब्ध कराता है, जबकि software इन resources का उपयोग करके विभिन्न tasks perform करने की सुविधा देता है।
Software के प्रमुख महत्व निम्नलिखित हैं:
- Computer hardware को instructions प्रदान करता है।
- Hardware resources को efficiently उपयोग करने में सहायता करता है।
- User को विभिन्न tasks perform करने की सुविधा देता है।
- Data processing और information generation में सहायता करता है।
- Communication और Internet access को संभव बनाता है।
- System security और maintenance में सहायता करता है।
- Programming और नए applications develop करने की सुविधा देता है।
Examples of Different Types of Software
एक computer system में एक साथ कई प्रकार के software काम कर सकते हैं। उदाहरण के लिए, जब कोई student web browser में online study material पढ़ता है, तो Operating System system resources manage करता है, device drivers hardware devices के साथ communication कराते हैं और browser user को web content access करने की सुविधा देता है। Antivirus और अन्य utility programs system maintenance में सहायता कर सकते हैं।
| Software | Category | Purpose |
|---|---|---|
| Windows | System Software | Computer resources और system operations manage करना |
| Printer Driver | System Software | Operating System और printer के बीच communication |
| Web Browser | Application Software | Websites और Internet content access करना |
| Antivirus | Utility Software | Security और malware protection में सहायता |
| Compiler | Programming Software | Program source code को translate करना |
| IDE | Programming Software | Software development के लिए integrated tools प्रदान करना |
Important Points
- Software programs और instructions का collection है।
- System Software computer system और hardware resources को manage करने में सहायता करता है।
- Operating System एक महत्वपूर्ण System Software है।
- Device Driver Operating System और hardware device के बीच communication में सहायता करता है।
- Assembler assembly language को machine-oriented code में translate करता है।
- Compiler source program को compile करके target code generate करने में सहायता करता है।
- Interpreter execution के दौरान program को translate और execute करता है।
- Application Software user के specific tasks को पूरा करने के लिए उपयोग होता है।
- General-Purpose Software कई सामान्य tasks के लिए उपयोग किया जा सकता है।
- Special-Purpose Software किसी particular task या requirement के लिए बनाया जाता है।
- Utility Software system maintenance, protection और management में सहायता करता है।
- Programming Software software development में programmers की सहायता करता है।
- Hardware और Software एक-दूसरे पर निर्भर होते हैं।
Board Focus
Software → Programs और instructions का collection
System Software → Computer system और hardware resources को manage करना
Operating System → User और hardware के बीच interface
Device Driver → OS और hardware के बीच communication
Assembler → Assembly Language को machine code में translate करता है
Compiler → Source Program को compile करके target code बनाता है
Interpreter → Execution के दौरान program को translate और execute करता है
Application Software → User के specific tasks के लिए
Utility Software → System maintenance और protection के लिए
Programming Software → Program development के लिए
Board Important Questions
Very Short Answer Questions
Q1. Software क्या है?
Answer: Software programs और instructions का collection है जो computer को विभिन्न tasks perform करने के लिए निर्देश देता है।
Q2. Software के दो मुख्य प्रकार कौन-कौन से हैं?
Answer: System Software और Application Software software के दो प्रमुख प्रकार हैं।
Q3. System Software क्या है?
Answer: System Software वह software है जो computer system और hardware resources को manage करने में सहायता करता है।
Q4. Application Software क्या है?
Answer: Application Software user के specific tasks और requirements को पूरा करने के लिए बनाया गया software है।
Q5. Device Driver क्या है?
Answer: Device Driver Operating System और hardware device के बीच communication कराने वाला software है।
Q6. Compiler क्या है?
Answer: Compiler एक translator program है जो source program को target या machine-oriented code में translate करता है।
Q7. Utility Software क्या है?
Answer: Utility Software computer system के maintenance, protection और management में सहायता करने वाला software है।
Q8. Programming Software का क्या उपयोग है?
Answer: Programming Software का उपयोग programs को develop, compile, execute और debug करने में किया जाता है।
Short Answer Questions
Q9. System Software और Application Software में अंतर बताइए।
| System Software | Application Software |
|---|---|
| System और hardware resources को manage करता है। | User के specific tasks को पूरा करता है। |
| Computer के basic operation के लिए महत्वपूर्ण होता है। | User की आवश्यकता के अनुसार उपयोग किया जाता है। |
| Examples: Operating System, Device Driver | Examples: Browser, Word Processor |
Q10. General-Purpose और Special-Purpose Application Software में अंतर बताइए।
Answer: General-Purpose Application Software को विभिन्न सामान्य tasks के लिए उपयोग किया जा सकता है, जैसे document editing, spreadsheet calculation और web browsing। Special-Purpose Application Software किसी specific task या requirement को पूरा करने के लिए बनाया जाता है, जैसे banking system, railway reservation system या hospital management system।
Q11. Utility Software क्या है? इसके उदाहरण दीजिए।
Answer: Utility Software computer system के maintenance, protection और management में सहायता करता है। Antivirus, backup utilities, file compression tools और disk utilities इसके उदाहरण हैं।
Q12. Compiler और Interpreter में अंतर बताइए।
| Compiler | Interpreter |
|---|---|
| Program का translation compilation stage में करता है। | Program को execution के दौरान translate और execute करता है। |
| Compilation के बाद target code उपलब्ध हो सकता है। | आमतौर पर execution के समय translation करता है। |
| Errors compilation process के दौरान report किए जाते हैं। | Execution के दौरान error मिलने पर execution प्रभावित होता है। |
Q13. Device Driver की क्या भूमिका है?
Answer: Device Driver Operating System को किसी particular hardware device के साथ communicate करने में सहायता करता है। इसके कारण Operating System printer, keyboard, graphics hardware, audio device आदि को नियंत्रित और उपयोग कर सकता है।
Long Answer Questions
Q14. Software के विभिन्न प्रकारों का वर्णन कीजिए।
Answer: Software programs और instructions का collection है। इसके प्रमुख प्रकार System Software, Application Software, Programming Software और Utility Software हैं। System Software computer system और hardware resources को manage करने में सहायता करता है। Operating System, Device Driver और Firmware इसके उदाहरण हैं। Application Software user के specific tasks को पूरा करने के लिए उपयोग होता है, जैसे word processing और web browsing। Programming Software programmers को programs develop और debug करने में सहायता करता है, जैसे compiler, debugger और IDE। Utility Software system maintenance, security और management में सहायता करता है, जैसे antivirus और backup utilities।
Q15. System Software के प्रमुख प्रकारों को समझाइए।
Answer: System Software computer system के operation और hardware resource management में सहायता करता है। इसके प्रमुख प्रकार Operating System, Device Driver, Language Translator और Firmware हैं। Operating System system resources को manage करता है। Device Driver Operating System और hardware devices के बीच communication कराता है। Language Translators programming languages को machine-understandable form में translate करने में सहायता करते हैं। Firmware hardware के basic operations और startup में महत्वपूर्ण भूमिका निभाता है।
Q16. Application Software के प्रकारों को उदाहरण सहित समझाइए।
Answer: Application Software को broadly General-Purpose और Special-Purpose Application Software में समझा जा सकता है। General-Purpose software सामान्य tasks के लिए उपयोग किया जाता है, जैसे word processor, spreadsheet और web browser। Special-Purpose software किसी specific task या requirement के लिए बनाया जाता है, जैसे banking software, railway reservation system और hospital management system।
Quick Revision
- Software: Programs और instructions का collection।
- System Software: Computer system और hardware resources को manage करता है।
- Operating System: User और computer hardware के बीच interface प्रदान करता है।
- Device Driver: OS और hardware के बीच communication कराता है।
- Language Translator: Program को एक language/form से दूसरी suitable form में translate करने में सहायता करता है।
- Application Software: User के specific tasks के लिए उपयोग होता है।
- Utility Software: System maintenance और protection के लिए उपयोग होता है।
- Programming Software: Software development में programmers की सहायता करता है।
- General-Purpose: सामान्य और विभिन्न tasks के लिए।
- Special-Purpose: किसी specific task के लिए।
Practice Questions
- Software से आप क्या समझते हैं?
- Software के प्रमुख प्रकारों के नाम लिखिए।
- System Software क्या है?
- Application Software क्या है?
- System Software और Application Software में अंतर बताइए।
- Operating System को System Software क्यों कहा जाता है?
- Device Driver क्या है और इसका क्या उपयोग है?
- Language Translator क्या है?
- Assembler, Compiler और Interpreter में अंतर बताइए।
- General-Purpose और Special-Purpose Application Software को उदाहरण सहित समझाइए।
- Utility Software क्या है? इसके प्रमुख उदाहरण दीजिए।
- Programming Software का क्या महत्व है?
- Software और Hardware में अंतर बताइए।
- System Software के विभिन्न प्रकारों का विस्तार से वर्णन कीजिए।
- Software के विभिन्न प्रकारों को उदाहरण सहित समझाइए।