Programming Models – Sequential, Parallel, Concurrent, Distributed, Dataflow

Programming Models

Programming Models basically woh framework ya style hain jiska use karke hum decide karte hain ki hamara program kaise execute hoga aur resources (जैसे CPU, memory) ko kaise manage karega.

1. Sequential Programming Model (सीक्वेंशियल प्रोग्रामिंग मॉडल)

Matlab Kya Hai?

Ise Linear model bhi kehte hain. Ismein, program ke instructions ek ke baad ek, exactly usi order mein execute hote hain jis order mein woh likhe gaye hain.
Jab tak Task A poora nahi hota, tab tak Task B shuru nahi ho sakta.

Simple Example:

Imagine karo aap cooking kar rahe ho. Pehle aap sabzi kaatoge (Task A), phir use fry karoge (Task B), aur tabhi use serve karoge (Task C). Aap fry karna shuru nahi kar sakte jab tak sabzi cut na ho jaye.

Key Point: Yeh single-threaded (ek hi raste par chalne waala) hota hai aur sabse aasan hota hai.

2. Parallel Programming Model (पैरेलल प्रोग्रामिंग मॉडल)

Matlab Kya Hai?

Ismein, program ke multiple parts (kaam) ek hi samay par (simultaneously) alag-alag processors ya cores par execute hote hain.
Iska main focus speed badhana (increase speed) hai.

Simple Example:

Ek construction site par, kai mazdoor (processors/cores) ek hi samay par diwaar banana, cement milana, aur painting karne ka kaam kar rahe hain. Saare kaam ek saath ho rahe hain.

Key Point: Yeh data-intensive (bahut zyada data waale) tasks ke liye use hota hai jahan calculations ko divide kiya jaa sake.

3. Concurrent Programming Model (कॉनकरेंट प्रोग्रामिंग मॉडल)

Matlab Kya Hai?

Ismein, aisa lagta hai ki multiple tasks ek hi samay par ho rahe hain, bhale hi woh sirf ek hi processor par aage-peeche switch karke chal rahe hon.
Processor bahut tezi se Task A se Task B aur phir Task C par switch karta hai (context switching), jisse illusion create hota hai ki sab ek saath ho raha hai.

Simple Example:

Aap ek hi phone par gaana sunte ho, browsing karte ho, aur downloading bhi chalti rehti hai. Phone ka processor tezi se sabke beech switch karta hai.

Key Point: Iska focus tasks ko manage karna aur waiting time kam karna hai, taaki system responsive rahe. Parallel se thoda alag hai kyunki ismein zaroori nahi ki alag processors hon.

4. Distributed Programming Model (डिस्ट्रिब्यूटेड प्रोग्रामिंग मॉडल)

Matlab Kya Hai?

Ismein, program ke parts alag-alag machines (computers) par execute hote hain jo network se connected hain.
Yeh Parallel jaisa hi hai, par processors ek hi machine mein hone ke bajaye poore network mein phailay hue hote hain.

Simple Example:

Google Search Engine ko dekho. Jab aap search karte hain, toh duniya bhar mein failay hazaaron servers (machines) aapke request par ek saath kaam karte hain.

Key Point: Yeh fault-tolerance (agar ek machine fail ho jaaye to doosri kaam kare) aur scalability (zyada users ko handle karna) ke liye bahut accha hai.

5. Dataflow Programming Model (डेटाफ़्लो प्रोग्रामिंग मॉडल)

Matlab Kya Hai?

Ismein, execution order instructions ke sequence par nahi, balki data ki availability par depend karta hai.
Jab kisi operation ko uske input data mil jaate hain, tabhi woh execute hota hai. Ise hum "fire" hona kehte hain.

Simple Example:

Ek spreadsheet program (Jaise Excel) dekho. Cell C mein formula hai A + B. C ka calculation tabhi update hoga jab A ya B ka data change ho. Data aayega tabhi kaam hoga.

Key Point: Yeh reactive systems aur signal processing (jahan data streams lagatar aate rehte hain) mein use hota hai.

Model Focus / Execution Style Simple Definition
Sequential Order-dependent, one after another Ek kaam khatam to doosra shuru
Parallel Speed / Multiple jobs at the same instant on multiple cores Bahut saare kaam ek saath, alag CPU par
Concurrent Responsiveness / Multiple jobs in an overlapping time period on one core Processor sabke beech tezi se switch karta hai
Distributed Fault-tolerance / Multiple jobs on multiple networked machines Poore network mein kaam bantna
Dataflow Data-driven / Execution based on data availability Data milega tabhi kaam shuru hoga

Comments

Popular posts from this blog

Data Abstraction

Data Structure Ka Parichay Aur Prakar (Introduction and Types of Data Structure)

Data Abstraction