Follow

05 दिसंबर 2022

Deadlock in Hindi - डेडलॉक क्या है? - MySQL

Hello Friends ! आज हम इस post में Deadlock के बारें में पढेंगे और इसकी conditions को भी देखेंगे. इसे आप पूरा पढ़िए. आपको यह आसानी से समझ आ जायेगा. तो चलिए start करते हैं:-

डेडलॉक क्या है?

एक system में deadlock वह condition होती है , जब एक से अधिक process व एक से अधिक resource एक दूसरे को engage रखते है , और किसी task को perform करते है , यह task पूर्ण रूप से perform नहीं हो पाती है , तब इस situation को deadlock कहाँ जाता है , किसी system में deadlock के बनने के निम्न चरण होते है | 


उदहारण -

माना की  दो Friend  है और दोनों Computer  खेलना चाहते हैं जिसके कारण दोनों fight करते है , एक के पास Remote control  है तो दुसरे के पास Games  की cd है.
जिसके कारण दोनों दोस्तों में से कोई भी नही खेल पाता है लेकिन दोनों में से कोई भी cooperate करने के लिए Ready  नही है. यह स्थिति ही Deadlock  कहलाती है.

Conditions of Deadlock in Hindi

Deadlock की 4 Conditions होती है जो निम्नलिखित है:-

(01) Mutual Exclusion
(02) Hold & Wait
(03) No-preemption
(04) Circular wait


(01) Mutual Exclusion :-


यह मुख्य रूप से वह condition होती है , जब यदि एक process किस resource का use कर रही हो तब उस condition का enter होना वर्जित होता है , लेकिन  ऐसी condition फ़ैल हो जाती है , अर्थात दूसरी process enter कर जाती है , तब deadlock generate हो जाता है | 


(02) Hold & Wait :-


जब एक process किसी resource को hold करके रखती है , और अन्य process इसका wait करती है , तब पहली process का holding time व  दूसरी process का waiting time लगातार बढ़ते जाते है , तब इस स्थिति को deadlock कहाँ जाता है |


(03) No-preemption :-

किसी process को दिया गया CPU जब एक निश्चित समय के बाद forcefully वापस  नहीं लिया जाता है , तब इस process को no -preemption कहाँ जाता है , जिसके कारण deadlock निर्मित होता है | 


(04) Circular wait :-


एक process किसी ऐसे resource की demand करती है , जिस resource को कोई अन्य process use कर रही हो  एवं वह अन्य process ऐसे resource की demand करती है , जिसे first process hold करके रखे हुए है , तब इस case में दोनों ही एक दूसरे के resource को free नहीं करती फलस्वरूप deadlock बन जाता है | 


Disadvantage of Deadlock in Hindi –

 इसके नुकसान निम्न है -

  1. Deadlock के कारण प्रोसस्स के execution में देरी होती है | 
  2. Deadlock में Process को पता होना चाहिए की future में उसे की resource की जरूरत होगी 
  3.  Deadlock में preemption आवश्यकता से अधिक बार होती है | 

Advantage of Deadlock in Hindi -


इसके लाभ निम्नलिखित हैं:-

       1 . Deadlock की  स्थिति उन processes के लिए अच्छी है जो सिर्फ एक ही                       कार्य को  perform करते हैं | 
       2 .  Deadlock avoidance के लिए no preemption की आवश्यकता नहीं होती | 

02 दिसंबर 2022

MySQL Table Locking in Hindi

 MySQL एक RDBMS है , जिसमे data table में manage होता है , इस management के अनुसार RDBMS और table पर Restriction लगाए जाते है , जिन्हे Lock कहाँ जाता है , अर्थात locking मुख्य रूप से data base व table पर लगाए गए ऐसे प्रतिबंध है , जिनके अनुसार data को unauthorized access   activities से protect किया जाता है , MySQL में locking के लिए कई command उसे होती है , locking कई प्रकार से परिभाषित होता है , जो निम्न है | 


(1) INTERNAL LOCKING
(2) ROW-LEVEL  LOCKING
(3) TABLE-LEVEL LOCKING
(4) EXTERNAL LOCKING


 (1) INTERNAL LOCKING:-


यह locking की process MySQL के अंदर perform होने वाली process है जिसमे MySQL server स्वंय ही table के content को उस समय manage करता है , जब इसकी demand multiple user से आती है , इस locking में पूरा work server का होता है , अन्य दूसरा program इसमें interfere नहीं करता | 




  (2) ROW-LEVEL  LOCKING :-


इस प्रकार की locking process तब perform होती है , जब database में मौजूद table में एक या एक से अधिक rows को access करने के लिए multiple user द्वारा command generate की जाती है , इसमें command जैसे - "select" command का use data को access करने में किया जाता है , ऐसी condition में deadlock के generate होने के chance अधिक होते है , जिसे avoid व manage किया जाता है | 

                                            इस locking में rollback के chance कम से कम होते है | 


 (3) TABLE-LEVEL LOCKING :-


इस प्रकार की locking process मुख्य रूप से database में रखी table पर restrection को define करती है , जब एक की जगह एक से अधिक tables पर operation perform किये जाते है , जैसे - table को marge करना table  को अलग करना marge की गयी टेबल को अपडेट करना इस पर DML operation perform करना इत्यदि के लिए  यह locking process परिभषित होती है | 


 (4) EXTERNAL LOCKING :- 


इस प्रकार की locking process का संबंध किसी table अथवा data से नहीं होता है , बल्कि table के बाहर  होने वाली उन सभी process से होता है , जिनका relation table से है , अतः  जब MySQL database से कई process एक साथ data की demand करती है , तब उन सभी process को उनकी प्रायक्त के अनुसार timing के अनुसार data को table को manage किया जाता है | 

01 दिसंबर 2022

Basic MYSQL Queries. DML/DDL/TCL Queries in Hindi

MySQL एक Database है , जो की RDBMS को defined करता है , MySQL के अंदर data व उससे related किसी भी प्रकार के operations  को perform करने के लिए database के लिए एक command लिखी जाती है , इसी command को MySQL queries के नाम से जाना जाता है | 
                                                                        MySQL में जब यह command या queries fire की जाती है , तब एक function perform होता है , और result के रूप में MYSQL response देता है | 
                                                                         MYSQL में query जैसे create, slash, insert इत्यादि का use किया जाता है , जो data से संबंधित अलग -अलग task perform करती है , MySQL Queries को उनकी Functionalityके अनुसार उन्हें अलग -अलग categories में Divide करके रखा गया है , जिन्हे Query का type भी कहाँ जाता है , ये type निम्न है | 

(01) DML Queries
(02)  DDL Queries
(03) TCL Queries


 DML Queries


DML का पूरा नाम data manipulation language है , MySQL के Queries group में इस group के अंदर मुख्य रूप से इस प्रकार की command आती है , जिसका use data को manipulate करने के लिए किया जाता है | ये Command निम्न है | 


(01) Insert Command :-


इस command के माध्यम से MySQL में बनी हुई किसी table के अंदर data को insert किया जाता है , इसके लिए insert into keyword लिखा जाता है |  

Syntax:-

INSERT INTO TABLE NAME ( Col-1, Col-2. ---Col-N)  VALUES (Val-1, Val-2----Val-N);

 

 

 Example:-

INSERT INTO EMP ( SNO, NAME, CITY ) VALUES ( 101, ‘RAM’ , ‘SGR

 

 (02) Update Command :-


इस Command के माध्यम से MySQL में created table के अंदर रखे हुए record य data को update  या change किया जाता है , यह command set keyword का use करती है , जिसमे किसी particular data या data के group को अपडेट या change कर दिया जाता है | 


Syntax:-

UPDATE TABLE NAME SET

Col-1 = value

Where Condition;

 

 Example:-

UPDATE EMP SET CITY =’TKG’

WHERE SNO = 102;

 

 (03) Delete:-

इस command के माध्यम से database में बनी किसी table के particular data या record को table से ही हटा दिया जाता है , जिसके लिए एक condition दी जाती है , जिसके अनुसार table के data या record को पहले select किया जाता है , और फिर इसे table से हटा दिया जाता है | 


Syntax :-

DELETE FROM TABLE NAME

   WHERE CONDITION;

 

Example :-

DELETE FROM EMP

     WHERE SNO = 105 ;


 DDL Queries 


DDL का पूरा नाम data definition language है , MySQL में data से संबंधित विभिन्न प्रकार के structure को define करने व manipulate करने के संबंधी DDL Command व queries का use किया जाता है , ये queries निम्न है | 


(01) Create Command :-


इस command के माध्यम से MySQL में data को रखने वाले structure table या अन्य दूसरे structure का निर्माण किया जाता है , इसमें table के कॉलम उनके data type उनकी size में defined किया जाता है | 


Syntax :-

CREATE TABLE NAME ( Col -1 datatype (size) , Col -2 datatype (size) -----);

 

Example :-

CREATE EMP (SNO VARCHAR2 (4), NAME VARCHAR2 (5) );

 
(02) Alter Command :-

इस command के माध्यम से MySQL में बनी हुई table के structure को modify किया जाता है , अर्थात किसी बनी हुई table में नए column को add करना या हटाना इत्यादि किया जाता है | 


Syntax :-

ALTER TABLE          TABLE NAME  CONSTRAINT CLAUSE;

    

Example :-

ALTER TABLE         EMP ADD MOBILE VARCHAR2 (10);


 (03) Drop Command :-

इस command के माध्यम से MySQL में कभी भी Table को destroyed या नष्ट कर दिया जाता है , जिससे एक table में रखा हुआ सम्पूर्ण या complete record data भी table के साथ -साथ नष्ट हो जाता है 


Synatx :-

DROP TABLE NAME;

 

Example :-

DROP EMP;


 TCL Queries 


TCL का पूरा नाम transaction control language है , MySQL में बनी हुई किसी table में मौजूद records से संबंधित एक से अधिक transaction user द्वारा perform होते रहते है , जिसमे data का format change होता रहता है , अतः इन पर होने वाले transaction को नियंत्रित करने के लिए TCL queries या command का use किया जाता है , ये command निम्न है | 


(01) commit command :-

डेटाबेस के open होने के साथ user database के साथ एक से अधिक different type के transaction ( Insert , Update , Delete etc ) perform करता है , इन सभी transaction को permanent बनाने के लिए इस command का use किया जाता है | 


Syntax :-

COMMIT;

 (02) rollback :- 


यह command commit command के ठीक विपरीत work करता है जिसमे database को open करने के बाद से होने वाले सभी transaction को यदि हम निरस्त करना चाहते है , तब इस command का use किया जाता है , जैसे ही इसे चलाते है data अपनी पुरानी condition पर आ जाता है | 


Syntax :-

Rollback;

   


23 नवंबर 2022

Process Management in OS in Hindi

 Operating System में process मुख्य रूप से किसी program की running state को कहाँ जाता है , जब एक program में execute कर दिया जाता है , तब वह  process बन जाता है , process के दौरान program  की active अवस्था आ जाती है |  

                              जब एक process create होती है , तब उससे संबंधित अन्य सब process भी create हो जाती है , और system में process का creation व deletion लगातार चलता रहता है , एक मुख्य process parent process होती है , जबकि उससे generate अन्य process child process कहलाती है | 




Process Hierarchies 




एक process को exicute करने की जिम्मेदारी CPU की होती है , उसके अलावा CPU exicute के साथ counter को रखता है , जो parent अथवा child process को count करता है | 
एक operating system एक operating system एक process के साथ कई process को execute कर सकता है , जिसमे CPU को process के execution की scheduling दी जाती है , व process आपस में communicate की जाती है | 

Process State :-


CPU जब किसी program को active कर देता है , तब वह process बन जाता है , process के बनने से लेकर destroyed होने तक उसकी विभिन्न states होती है , जिन्हे उसके work के अनुसार किया जाता है , इन सभी अवस्थाओं को combine रूप से process की live cycle कहा जाता है , जो निम्न है | 

State of Process 

(01) New :-


यह state process के निर्माण को define करती है जिसमे process का born होता है, जब secondary memory से process को primary memory में लाया जाता है , तो यही process की new state कहलाती है | 

(02) Running :-


यह state process के execution को indicate करती है , जिसमे process का execution चल रहा होता है , और process  पर CPU तथा अन्य दूसरे resources का नियंत्रण होता है | 

(03) Ready :- 


यह किसी process के तैयार होने को define करती है , इसमें process execute नहीं होती है , लेकिन उसे मिश्रित रूप से CPU प्राप्त होगा यह define हो जाता है | 

(04) Waiting :-


एक process का complete execution होने से ठीक पहले ही process किसी अन्य resources के लिए demand करती है , जबकि वह resource किसी अन्य process के पास होता है , ऐसी स्थिति में पहली process अपने execution को रोक देती है , इस state को waiting state कहाँ जाता है | 


21 नवंबर 2022

Program and System Structure of Operating System in Hindi

 Program:-


एक program मुख्य रूप से एक से अधिक instruction का एक collection होता है , program किसी task को पूर्ण रूप से perform करने वाले instruction को रखता है | 
                                                        एक system में CPU द्वारा program का exicution किया जाता है , और CPU हमेशा अपने exicution के लिए Data या instruction को main memory से fatch करता है , अतः एक program secondary memory से main memory में लाया जाता है , main memory में इस प्रकार एक या एक से अधिक प्रोग्राम मौजूद या रखे जाते है, क्यूंकि main memory में program को instruction को रखना या access करना secondary memory की अपेक्षा सरल होता है | 
 


                                                               

System Structure of OS :-


एक operating system बहुत बड़ा और complex software होता है , जिसमे कई programs involve होते है , program के अलावा इसमें modules और एक और modules में कई function present होते है ,इस प्रकार इसके Internal structure के दो अलग अलग format होते है | 

(01) Layered Structure :-    

इस strecture में इसके components को इसके function के अनुसार एक से अधिक level में बांटा जाता है, ये  लेवल high -low direction को indicate करता है , इसमें top layer पर user program रखा जाता है , जबकि low layer पर सभी hardware components आते है | 


5      

User Programs

4      

Buffering for I/O Device

3     

Device Driver

2     

Memory Manager

   1       

CPU Scheduling

            Layer 0

Hardware

  

(02) Kernel structure :-


इस structure के according os के internal strecture में इसका मुख्य component kernel present होता है , यह सबसे important components है , क्यूंकि इसी के माध्यम user की command enter create की जाती है , इसके आलावा यह निम्न function provide करता है | 

(A) Process को create तथा Delete करने की method बनाना | 
(B) Process Scheduling Memory | 
(C) IO Menckenismउपलब्ध करता है | 
(D) inter process communication kernel | 

  



Shell Keywords Linux in Hindi

शेल क्या है? (Shell in Hindi) 

अन्य programming language की तरह Linux में भी keywords use किये जाते है, ये keyword reserve keyword कहलाते है , क्यूंकि इनका नाम व इनकी functionality पहले से ही Linux में define होती है , इन्हे इनके नाम से ही program में use किया जाता है | यदि different रूप से इनका use किया जाए तब program में Error generate होती है , keywords निम्न है -

if  case   for  echo   read   else   break    fi    do     while    until     done     etc. 

Linux में shell मुख्य रूप से एक command interpreter है , जो user तथा Linux operating system के बीच interface  का work करता है | user द्वारा दी जाने वाली command को interface  या exicute करने का work shell द्वारा किया जाता है | 

                     जब ये command user द्वारा Linux को दी जाती है , तब उसे Linux की Language में enter create किया जाता है , ताकि Cranel  इस command  को  समझ सके , ठीक इसी प्रकार output user की तरह दिया जाता है , जिसे enter create करने का काम भी shell का होता है, Linux में different types के task को perform करने के लिए different types की shells use की जाती है , जो निम्न है -

Various Type of Shells 

(01) The Bourne shell or sh
(02) The Bourne again shell or bash
(03) The c shell or csh
(04) The turbo c shell or tcsh
(05) The korn shell or ksh 

20 नवंबर 2022

Conditional And Looping Statement in Hindi


Conditional Statements

 Linux में भी Conditional Statement use किये जाते है जो एक program में किसी particular statement पर apply किये जाते है जिनके आधार पर program के किसी particular part को exicute किया जाता है या ignore किया जाता हाउ conditional statement निम्न है | 

(01) if -------them  :-

यह statement केवल true condition के लिए ही चलता है जिसमे if के साथ test condition लिखी जाती है जिसके true होने पर इसका true block exicute किया जाता है जबकि condition के false होने पर यह स्टेटमेंट कोई response नहीं देता है | 

Syntax

If test condition

Them

    True statement

fi

 

 Example

&a = 20;

If (&a > 10)

   Echo  “welcome”

fi

 

 (02) if -----else  statement :-

इसमें if के साथ एक test condition दी जाती है जिसके सही होने पर इसके true block exicute होता है जबकि condition false होने पर else के साथ लिखा गया false block exicute हो जाता है | 


Syntax

If Test Condition

 Then

    True statement

Else

False statement

fi

 


Example

&a =10;

&b =20;

If (&a == &b)

Then

      Echo “Number are equal”;

Else

      Echo “Number are not equal:’

fi

 

 (03) case statement :-

यह विशेष प्रकार का conditional statement होता है ,जिसके अनुसार program में एक से अधिक टेस्ट condition व् उनसे related statement का एक block define किया जाता है अब input value को इस block के अंदर enter किया जाता है जहाँ input value प्रत्येक test condition के साथ match की जाती है, एवं जिससे यह matching हो जाती है , उससे सम्बंधित statement को exicute कर दिया जाता है , और program control को block से सीधा ही बाहर कर दिया जाता है , एवं यदि किसी condition से यह match नहीं होता है तब block में लिखी अंतिम statement exicute करके program से out कर दिया जाता है | 

Syntax

Case “string-value” in

Pattern 1 command

                     Command;;

Pattern 2 command;;

                   Command;;

 -----------------------

-----------------------

*echo “Message”;;

esac

 

 

 Example 

echo "Enter Your Choice"

read &a;

case "&a" in

(01) echo "JAN";;

(02) echo "FEB";;

(03) echo "MAR";;

(04) echo "APR";;

(05) echo "MAY";;

(06) echo "JUN";;

(07) echo  "JUL";;

(08) echo "AUG";;

(09) echo "SEP";;

(10) echo  "OCT";;

(11) echo  "NOV";;

(12) echo  "DEC";;

 (*) echo "WRONG VALUE";;

esac

19 नवंबर 2022

What is Fragmentation in Hindi

 किसी Process द्वारा मांगे गए Memory size के अनुसार memory का block allocate किया जाता है, यह block कुल memory से ही दिया जाता है, जो एक Frame की तरह होता है , इसे प्रत्येक process की memory  size अनुसार ये frame की size भी अलग अलग होती है इन्ही frame को एक fragment कहा जाता है, इस एक से अधिक fragment बनाये जाते है fragment की बनने वाली process fragmentation कहलाती है | 

                                          fragmentation मुख्य रूप से दो प्रकार का होता है | 

(01) External fragmentation problem 
(02) Internal fragmentation problem 


(01) External fragmentation :-  

 यह समस्या उस समय उत्पन्न होती है जब process द्वारा demand किये गए memory block की size available size से अधिक हो , अर्थात माँगा जाने वाला memory space दिए हुए memory space से काफी बड़ा होता है

                    external fragmentation की समस्या को दूर करने के लिए एक method का use किया जाता है , जिसे "compaction " कहा जाता है | इस process के अनुसार free spaces को नीचे की ओर push कर दिया बड़ा memory block बना लेते है | 

                             माना diagram (A) में कुल 4 free space है तो क्रमशः 50KB , 20KB , 40KB  तथा combine करने के लिए push नीचे की ओर किया जायेगा जहाँ इन पर operation perform होगा 

                           

50KB+20KB+40KB+40KB=150KB

 यदि process compaction process होगी जो 150KB area provide करती है | 


                    




(02)Internal Fragmentation :-

यह एक अन्य समस्या है जो उस समय उत्पन्न होती है जब demand किये जाने वाला memory space मौजूद memory स्पससे छोटा होता है इसमें वह कुछ space का उसेकर लेती है व् कुछ को free space रखती है अतः एक fragment में बहुत सा space free रहता है इस problem को internal fragmentation कहा जाता है इस समस्या से निपटने के लिए dynamic parition किया जाता है जिसमे की demand किये हुए memory के अनुसार गई memory provide की जाती है व बची हुई memory अन्य block को लोटा दी जाती है 

Relocatable Partitioned Management :- external fragmentation की समस्या का समाधान compaction method है | इसका उद्देश्य memory के तत्वों का उतरफेर करते हुए सभी free memory space को एक बड़े block में रखना है |    
                                 compaction technique के अनुसार के सभी process द्वारा लिए गए memory space की position change होती है , अर्थात एक allocation पुनः दोहराया जाता है जिसमे की सभी allocate space memory के एक तरफ होते है जबकि सभी free space memory के दूसरे भाग में लेकिन compaction तभी संभव है जब relocation dynamic हो यदि relocation static होता है तब यह संभव नहीं होता है |                                                                                                                              
      




17 नवंबर 2022

जावा (JAVA) क्या है | What is Java in Hindi




JAVA सबसे ज्यादा लोकप्रिय Programming Language मे से एक है। अतः आपने कभी ना कभी Java का नाम जरुर सुना होगा, चूंकि Technology को नई ऊंचाई पर ले जाने में Coding और कंप्यूटर का बहुत बड़ा रोल है। और internet पर जितने भी Mobile Application और Websites मोजूद है, उसमे से अधिकतर Java Programming  की Help से ही बनाए गए है। पर अगर आप नही जानते है कि JAVA क्या है , तो Article के जरिए हम आपको JAVA Language के संबंधित सभी जानकारी देंगे। 

जावा (JAVA) क्या है | What is Java in Hindi

 

Java Computer की एक High Level Programming Language है जिसका इस्तेमाल Application और Software बनाने में किया जाता है। ये Programming Language सभी Operating System को Support करती है इसे किसी भी Platform में Run करवा सकते है।

Java का कोड English Language लिखा जाता है और इसमें C++ के Fundamental का भी इस्तेमाल किया गया है। और ये Oops के Concept को follow करती है , java Code को कोई भी व्यक्ति आसानी से समझ सकता है।

 

Java व्यापक रूप से उपयोग की जाने वाली Computer Language है, जो बाकी किसी भी अन्य Programming Language की तुलना मे Simple और सुरक्षित है। इसमें Code लिखते वक्त कुछ नियम को Follow किया है जिसे Syntax कहते है।

अगर कोई बिना Syntax के Program लिखेगा तो Screen पर Error आता है, इसलिए कोड लिखते  वक्त Syntax को Follow करना जरूरी होता है।

Java को Sun Micro system नामक कंपनी द्वारा विकसित किया गया था। जहां इसका पहला Public Implementation Java v1.0 वर्ष 1995 मे लॉन्च किया गया था।

बता दें Java को छोड़कर बाकी जितनी भी Programming Language है उनके Compiler जो Code Develop करते है वो बस एक ही System के लिए Generate होता है, और उसी मे Run होता है।

लेकिन Java Platform Independent Language होने के कारण Java Programming Software को बिना किसी बदलाव के Linux या Macintosh जैसे कई दुसरे Operating System पर Run कर सकते हैं।

Java का Use क्या है

इस Computer Programming Language का एक ही मकसद है. इसमें जो भी Code लिखा गया है वो सारे Computers में Run होने चाहिए. चाहे वो दोनों machine एक जैसे हो या नहीं, मेरा कहने का मतलब है, चाहे वो कोई भी OS हो (Windows या Mac) जैसे एक उदहारण के तोर पे C++ में लिखा गया Code कभी भी दुसरे machine में एक जैसे Execute नहीं होता. Windows में लिखा गया Code कभी भी Mac OS में Run नहीं होता, लेकिन यह java के मामले में ये गलत है.Web based Programming और Mobile application, Software बनाने के लिए इसका इस्तेमाल किया जाता है. Android के जितने भी Operating System हैं जैसे Kitkat, Lolipop, Oreo ये सभी इसी Programming Language से Develop किया गया है. आज के समय में जितने भी Web Pages हैं वो Java Script पे चलते हैं. आपके मन में सवाल होगा की कैसे Code Execute होता है | 



Deadlock in Hindi - डेडलॉक क्या है? - MySQL

Hello Friends ! आज हम इस post में Deadlock के बारें में पढेंगे और इसकी conditions को भी देखेंगे. इसे आप पूरा पढ़िए. आपको यह आसानी से समझ आ ज...