Foundations — WCET (Worst Case Execution Time) analysis
5.5.13 · D1· Coding › Embedded Systems & Real-Time Software › WCET (Worst Case Execution Time) analysis
Yeh page assume karta hai ki tumhe kuch nahi pata. parent note padhne se pehle, tumhe har woh symbol bina jhijhake padhna aana chahiye jo woh tumhare saamne rakhta hai. Isliye hum har ek cheez ek picture se build karte hain. Upar se neeche padho — har idea ek ladder ki rung hai jo neeche wali rung pe tikti hai.
1. "Execution time" kya hoti hai? (cycles)
Kisi bhi subscript ya sum se pehle, hume raw material chahiye: hum measure kaise karte hain ki code kitna time leta hai?
Ek metronome ki clicking ka picture banao. Har click pe CPU thodi si kaam finish kar sakta hai. Agar koi kaam 12,994 clicks leta hai, toh hum kehte hain woh 12,994 cycles leta hai.

Yeh kyun chahiye: WCET analysis ka har number — 5 cycles, 100 cycles, 12,994 cycles — inhi ticks mein count hota hai. Yeh hamare ruler ka "inch" hai. Prerequisites Compiler Optimizations aur Cache Memory Architecture mein hain, lekin dil se ek cycle bas ek tick hai.
2. "Task" kya hota hai? Aur uska subscript
Parent likhta hai , , , . Woh chhota logon ko darata hai. Nahi darana chahiye.
Ek numbered to-do list ka picture banao. = "item 3 ke saath deadline likhi hui hai". Bas itna hi ek subscript hota hai: ek address label.
Yeh kyun chahiye: scheduling formula ek waqt mein ek task ke baare mein baat karta hai. Subscript hume ek formula likhne deta hai jo har task ke liye kaam kare, bajaye iske ki hum har task ke liye alag copy karein.
3. Deadline — finish line

Ek running track ka picture banao. Gun cycle 0 pe fire hoti hai; finish line pe painted hai. Late cross karo → fail, aur ek safety-critical system mein "fail" ka matlab crash ho sakta hai.
Yeh kyun chahiye: WCET tabhi matter karta hai jab kisi cheez ke relative ho. Ek task ka 12,994 cycles lena theek hai agar deadline 20,000 hai, aur catastrophe hai agar deadline 10,000 hai. Deadline woh goalpost hai.
4. Worst-case execution time — asli hero
Ab main character. Note karo ki parent aur WCET word dono ek hi cheez ke liye use karta hai.

Figure dekho: bahut saare measured runs low cluster karte hain (histogram), lekin WCET sabse right wali wall hai — woh value jise kuch cross nahi kar sakta. Woh wall hai.
Aadhe do words jo tume straight rakhne hain (parent dono pe zor deta hai):
Ek ceiling ka sochho: safe matlab ceiling tumhare sar ke upar hai (tum use kabhi nahi thokate); tight matlab yeh faaltu 40 metre upar nahi hai.
5. Interference — ek taraf dhakele jaana
Ek counter pe queue ka picture banao jahan VIPs baar baar line cut karte rehte hain. Tumhari apni service leti hai, lekin line cut karne wale VIPs tumhe ka wait cost karte hain. Yeh waiting scheduling aur interrupts se aati hai.
Yeh kyun chahiye: tum vacuum mein nahi chalte. Deadline milna tumhare kaam plus doosron ke impose kiye delays par depend karta hai.
6. Response time aur schedulability formula
Ab har piece parent ki key equation mein fit ho jaata hai:
- — response time: woh real moment jab task finish line cross karta hai.
$\le$symbol matlab less-than-or-equal: "par ya pehle". Exactly deadline par bhi pass hai.

Figure do blocks stack karta hai — waiting () phir working () — aur dikhata hai ki total deadline line tak pahunchta hai ya nahi. Agar bar deadline line ke left khatam hota hai: schedulable. Agar aage nikal jaata hai: fail.
Yeh poora point kyun hai: poora subject ek trustworthy is inequality mein feed karne ke liye exist karta hai. Garbage → garbage guarantee.
7. Summation symbol — "ek list add karo"
Parent ki WCET decomposition use karti hai. Yeh bhi scary nahi hai.
Ek cash register ka picture banao jo receipts ek ek karke total karta hai. Woh hai .
Yeh kyun chahiye: ek program ka time bahut saare chhote blocks ke times ka total hota hai. Saikdon blocks ke liye likhna pagalpan hai; ek saaf symbol mein "har block ka time add karo" kehta hai.
8. Block, path, aur paths par
Yeh exactly parent ki decomposition hai, ab padhne layak: "Har path ke liye, uske blocks ke times add karo; phir sabse bada path total rakho." Control Flow Graph (CFG) in saari paths ka map hai; Static Program Analysis woh tarika hai jisse hum unhe search karte hain.
9. Example ki arithmetic padhna
Parent find_max ke liye compute karta hai, loop body 3+4+6 cycles ke saath:
Upar ki saari cheezein use karke decode kiya:
5aur2: blocks A aur E, har ek ek baar run hota hai (entry/exit — boundary cases).(n-1): loopi=1sei<ntak chalta hai, yaani baar — ek loop bound jo analyzer ko batana padta hai.(3+4+6): loop ke through worst path —ifhar baar liya jaata hai, block D ek cache miss (worst hardware mood).
Yeh sab topic mein kaise fit hota hai
Ise upar se padho: cycles block times banate hain, block times paths banate hain, sabse bada path WCET hai, aur WCET deadline test mein plug hota hai jo is poore subject ke exist karne ki wajah hai.
Equipment checklist
Dayi taraf cover karo. Agar tum har ek ka jawab de sako, tum parent note ke liye ready ho.