Chapter :-1 (Hindi)
3. Functions & Services of OS
Functions of Operating System
Operating System (OS) एक प्रकार का software है जो user और computer hardware के बीच एक bridge की तरह कार्य करता है। यह एक ऐसा environment प्रदान करता है जहाँ users programs को efficiently और conveniently execute कर सकते हैं।
-
यह सभी computer resources को manage और control करता है।
-
यह user programs को आवश्यक services और resources प्रदान करता है।
-
यह program execution को coordinate और monitor करता है ताकि errors को रोका जा सके।
-
यह एक user interface (virtual machine) प्रदान करता है और software की complexity को hide करता है।
-
यह programs के लिए multiple execution modes को support करता है।

Note: Operating System (OS) सभी computer resources को control करता है, program execution को coordinate करता है, system की complexity को hide करता है, security सुनिश्चित करता है और resource utilization को बेहतर बनाता है।
Functions of an Operating System
1. Process Management
Operating System में process management का अर्थ processes को manage करना है।
Process एक running program होता है। Process का life cycle उस समय से शुरू होता है जब program start होता है और तब तक चलता है जब तक वह finish नहीं हो जाता।

Core Functions in Process Management:
- Scheduling :-यह तय करता है कि अगला process कौन सा CPU का उपयोग करेगा (जैसे algorithms – Round Robin या Priority Scheduling)।
- Synchronization :- यह orderly execution सुनिश्चित करता है, जिसमें locks, semaphores, या monitors का उपयोग करके race conditions को रोका जाता है।
- Deadlock Handling :-यह उन स्थितियों का पता लगाता और रोकता है जहाँ processes resources के लिए हमेशा wait करते रहते हैं (deadlock situation)।
- Inter-Process Communication (IPC) :-यह processes को आपस में data exchange करने की अनुमति देता है, जैसे shared memory या message passing के माध्यम से।
2. Memory Management
Operating System में memory management यह नियंत्रित करता है कि data को main (primary memory) और secondary storage में कैसे store और organize किया जाए।
यह सुनिश्चित करता है कि programs को आवश्यक memory मिले और जब memory की आवश्यकता न रहे, तो उसे free कर दिया जाए।

Key Activities in Memory Management
- Allocation & Deallocation: आवश्यकता के अनुसार memory को assign (allocate) करना और काम पूरा होने पर free (deallocate) करना।
- Protection: Processes को एक-दूसरे की memory में interfere करने से रोकना।
- Virtual Memory: बड़े programs को run करने के लिए disk space को अतिरिक्त memory की तरह उपयोग करना।
- Fragmentation Handling: compaction जैसी techniques के माध्यम से wasted space को कम करना।
- Disk Management: file storage, free space management, disk scheduling, और backups को handle करना।
3. File System Management
Operating System में file management यह नियंत्रित करता है कि data को storage devices पर कैसे store, name और access किया जाए।
यह users के लिए files को ढूँढना और उपयोग करना आसान बनाता है।

File System Management में शामिल हैं:
- File Attributes: File का name, type, size, और permissions को manage करना।
- File Types: जैसे text files, binary files, और executable files।
- Operations: Files को create, read, write, और delete करना।
- Access Methods: Data को तेजी से प्राप्त करने के लिए sequential, direct, और indexed access methods का उपयोग।
4. Device Management (I/O System)
Operating System में device management यह नियंत्रित करता है कि computer hardware devices जैसे printer या disk के साथ कैसे communicate करे।
यह device drivers और अन्य techniques का उपयोग करके smooth और efficient operation सुनिश्चित करता है।

Major Components in Device Management
- Device Drivers: यह hardware और Operating System (OS) के बीच interface का काम करते हैं।
- Buffering & Caching: Data को अस्थायी रूप से store किया जाता है ताकि devices की अलग-अलग speeds को match किया जा सके और system performance बेहतर हो सके।
- Spooling: Spooling उन data को manage करता है जो process होने के लिए wait कर रहे होते हैं, विशेष रूप से printer जैसे devices में। OS print jobs को एक spool (temporary storage area) में रखता है, जिससे CPU अन्य tasks को continue कर सकता है जबकि printer queue के अनुसार काम करता रहता है।
5. Protection and Security
Operating System में protection and security mechanisms system resources को unauthorized access या misuse से सुरक्षित रखने के लिए बनाए जाते हैं।
ये mechanisms यह नियंत्रित करते हैं कि कौन से processes या users specific resources (जैसे memory, files, और CPU time) को access कर सकते हैं।
यह भी सुनिश्चित करता है कि केवल authorized users ही विशेष actions perform कर सकें।

Operating System (OS) system resources और user data को unauthorized access और attacks से सुरक्षित रखता है।
- Access Control: User और process की permissions को सीमित करता है।
- Authentication: Users को उनकी credentials (जैसे UIDs/SIDs) के माध्यम से verify करता है।
- Resource Protection: Files, memory, या devices के misuse को रोकता है।
- Security: malware, denial-of-service (DoS) attacks, और data theft से सुरक्षा प्रदान करता है।
Additional Functions
Core tasks जैसे process management और memory management के अलावा, Operating System निम्न कार्यों पर भी ध्यान देता है:
- Performance Monitoring: System की efficiency को track करता है और bottlenecks की पहचान करता है।
- Job Accounting: Resource usage का record रखता है ताकि auditing और optimization किया जा सके।
- Error Detection: error logs, traces, और dumps generate करता है ताकि issues को detect और fix किया जा सके।
Note: ये सभी functions smooth operation, efficient resource allocation और system reliability सुनिश्चित करते हैं।