1.1 Unix Architecture
UNIX - Introduction (परिचय)
UNIX एक ऑपरेटिंग सिस्टम है जो की कई प्रोग्राम का समूह है | यह यूजर तथा कंप्यूटर हार्डवेयर के बीच कड़ी / माध्यम का कार्य करता है |
यह एक सिस्टम सॉफ्टवेर है जो कंप्यूटर के समस्त संसाधनों का आवंटन तथा प्रबंधन करता है तथा यूजर और हार्डवेयर के बीच माध्यम (इंटरफ़ेस) प्रदान करता है | इसे ऑपरेटिंग सिस्टम अथवा kernel भी कहा जाता है |
UNIX का विकास AT&T Bell Lab USA में वर्ष 1969 में हुआ | केन थोम्पसन तथा डेनिस रिची ने इस विकसित करने में मुख्य भूमिका निभाई |
इसकी शुरुआत MULTICS प्रोजेक्ट के साथ हुई | जिसका उद्धेश्य कई users द्वारा ऑपरेटिंग सिस्टम को एक साथ access प्रदान करना था |
MULTICS - Multiplexed Information and Computing Service - Complex
UNICS - Uniplexed Information and Computing Service (UNIX) - Simple
UNIX Operating System = Kernel + Shell + Programs
Kernel - Core / heart of the UNIX Operating System जो सीधे hardware के साथ interact करता है |
Shell - Program जिसके माध्यम से user kernel के साथ interact करता है | यह एक command interpreter है |
UNIX के कई versions market में उपलब्ध है - Solaris Unix, AIX, HP UNIX and BSD UNIX
Linux भी UNIX का ही एक flavor है जो की free उपलब्ध है |
UNIX को C Programming भाषा में develop किया गया है |
UNIX Architecture
Fig 1.1 Block Diagram of UNIX System
किसी सिस्टम की संरचना या बनावट की जानकारी को architecture कहा जाता है |
UNIX = Kernel + Shell + Commands / Utilities (Programs)
Kernel - यह UNIX Operating System का केन्द्रीय-भाग है | यह hardware के साथ interact करता है | Operating System के मुख्य कार्य जैसे - memory management, task scheduling, file management, process management, Input-Output Operations आदि kernel के द्वारा ही संपन्न किये जाते है | User program द्वारा system calls की सहायता से kernel services को access किया जाता है | kernel को /stand/unix or /unix or /kernel/genunix (Solaris) file द्वारा व्यक्त किया जाता है |
जब किसी UNIX system को start किया जाता है तो bootstrap program द्वारा kernel को memory में load किया जाता है |
Note - Linux में kernel को /boot/vmlinuz file द्वारा व्यक्त किया जाता है |
Shell - यह एक command interpreter है | यह एक program है जिसकी सहायता से user command run कर सकता है | user द्वारा दिए गए commands को shell द्वारा interpret किया जाता है और आगे kernel को प्रेषित किया जाता है | UNIX में कई shells उपलब्ध है | e.g. Bourne Shell (sh) , Bash shell (bash), Korn Shell (ksh), C Shell (csh)
वर्तमान shell देखने के लिए $echo $SHELL command प्रयुक्त होता है | यहाँ SHELL एक variable है तथा $SHELL उसकी value को व्यक्त करता है |
Commands and Utilities - ये small programs है जिनके द्वारा कार्य संपन्न होता है | UNIX में large command-set उपलब्ध है | standard commands की संख्या लगभग 250 है तथा third-party software द्वारा अन्य कई commands उपलब्ध करवाए जाते है |
Files and Directories - UNIX में data को files में रखा जाता है | files के समूह को directories में व्यवस्थित रखा जाता है | directories को tree जैसी संरचना file-system में रखा जाता है | File एक bytes का समूह है |
System Calls - User program द्वारा kernel की services को access करने के लिए system calls का प्रयोग किया जाता है |
सभी UNIX systems द्वारा same system calls का प्रयोग किया जाता है | यह POSIX standard द्वारा निर्धारित किया जाता है |
Important Facts & Definitions - महत्वपूर्ण तथ्य एवं परिभाषाएं
Portability - एक ही program को different hardware पर run किया जा सके |
सभी UNIX versions द्वारा same system calls का प्रयोग किया जाता है | (POSIX standard)
कई programs एक साथ CPU को access कर सकते है | (Multi-tasking)
कई programs एक साथ memory में store किये जा सकते है | (Multi-programming)
कई users एक साथ UNIX system में login कर use कर सकते है | (Multi-user)
UNIX में सब-कुछ file के रूप में व्यक्त किया जाता है |
प्रत्येक कार्य process के द्वारा संपन्न किया जाता है |
प्रत्येक command को run करने के लिए kernel द्वारा process create किया जाता है |
Kernel वह पहला program है जिसे system boot होने पर load किया जाता है |
CLI - Command Line Interface (Text based and Only keyboard as input device)
GUI - Graphical User Interface (Graphics and keyboard, mouse both are used as input device)
POSIX - Portable Operating System Interface (It is a standard)
BSD - Berkeley Software Distribution
Character - प्रत्येक alphabet, number or symbol को character कहा जाता है |
ASCII - प्रत्येक character का एक unique code होता है जिसे ASCII (American Standard Code for Information Interchange) value कहा जाता है |
System administrator - User जो सम्पूर्ण system का प्रबंधन (management) करता है | e.g. root user
login-name / user-id / username - name used by user to login
prompt - sign used to show that shell is ready for next command $ , %, # (for root user)
BSD UNIX - University of California, Berkeley developed its own UNIX and called it BSD UNIX. It became popular in universities and engineering
AIX - version of UNIX developed by IBM
sunOS / Solaris - version of UNIX by Sun Microsystems
HP UNIX - version of UNIX developed by HP
UNIX trademark is owned by The Open Group.
SVR4 - System V Release 4
X Window - the first windowing system for UNIX developed by MIT to compete with Microsoft Windows
GNU - recursive acronym (GNU's Not UNIX)
Linus Torvalds - Creator of the Linux Operating System
FSF - Free Software Foundation
GPL - General Public License
SVID - System V Interface Definition (standard create by AT&T)
SVR4 - System V Release 4
SUSV3 - Single UNIX Specification Version 3 (by X/Open and IEEE - write once and adopt everywhere)
File - bytes grouped together
Process - program in execution is called a process.
Flavors of Linux - RedHat, Caldera , Suse Debian and Mandrake are flavors of Linux.
Redhat Linux |
SUSE Linux |
|
---|---|---|
Caldera Linux |
Debian Linux |