"זמן אמת" מתייחס למערכות ותהליכים ממוחשבים שבהם הנכונות של פעולה תלויה לא רק בתוצאה הלוגית שלה אלא גם בזמן שבו התוצאה מופקת. בעיקרו של דבר, מערכת זמן אמת חייבת להבטיח תגובה בתוך מגבלת זמן מוגדרת, המכונה לעתים קרובות "מועד אחרון", ביחס לאירוע שהתרחש.
במילים פשוטות, זה אומר שהמערכת מעבדת נתונים ומגיבה מספיק מהר כדי להשפיע על האירוע או הסביבה המתרחשת באותו רגע. "מספיק מהר" יכול לנוע ממיקרו-שניות (עבור מערכות קריטיות) ועד מספר שניות (עבור יישומים פחות קריטיים).
שימוש ואופן פעולה
שימוש: מערכות זמן אמת חיוניות בתרחישים שבהם לעיכובים יכולות להיות השלכות משמעותיות, כגון:
- בקרת תהליכים פיזיים: אוטומציה תעשייתית, רובוטיקה ומערכות בקרת טיסה.
- טיפול מהיר בנתונים: מסחר פיננסי (מסחר בתדירות גבוהה), משחקים מקוונים וסטרימינג בשידור חי.
- אינטראקציה עם משתמשים: יישומי צ'אט בזמן אמת, עריכת מסמכים משותפת ואינדיקטורים לנוכחות מקוונת.
אופן פעולה:
פעולת זמן אמת מושגת באמצעות שילוב של חומרה ותוכנה ייעודיות:
- לכידת אירועים: המערכת מנטרת באופן קבוע את הסביבה או מקבלת נתוני קלט ("האירוע").
- עיבוד: מערכת הפעלה בזמן אמת (RTOS) או תוכנה ייעודית אחרת מעבדת את הנתונים. בניגוד למערכות הפעלה כלליות, RTOS נותנת עדיפות למשימות כדי להבטיח שהפונקציות הקריטיות ביותר יבוצעו באופן מיידי כדי לעמוד במועדים שלהן.
- תגובה: המערכת מספקת פלט או פקודה בחזרה לסביבה או למשתמש לפני שהמועד האחרון הנדרש פג. תגובה מהירה ודטרמיניסטית זו היא המאפיין המרכזי.
סוגי מערכות זמן אמת
מערכות זמן אמת מסווגות לפי מידת החומרה של המועדים שלהן וההשלכות של אי-עמידה בהם:
| סוג | השלכות אי-עמידה במועד האחרון | דוגמה |
| זמן אמת קשיח (Hard) | כשל מערכת מוחלט. אי-עמידה במועד עלולה לגרום לנזק פיזי קטסטרופלי, הפסד כלכלי או אובדן חיי אדם. | מערכת בלימה נגד נעילה (ABS) ברכב, בקרת טיסה במטוס. |
| זמן אמת יציב (Firm) | נסבל אם נדיר, אך התוצאה חסרת תועלת לאחר המועד האחרון. ביצועי המערכת נפגעים אך היא אינה בהכרח כושלת באופן קטסטרופלי. | בקר מכונה בפס ייצור במפעל, שבו יש לזרוק הוראת חלק מאוחרת. |
| זמן אמת רך (Soft) | תועלת התוצאה פוחתת לאחר המועד האחרון, אך המערכת ממשיכה לתפקד. איכות השירות יורדת. | סטרימינג של וידאו חי, שבו עיכוב קל גורם ללאג אך השידור נמשך. |
יתרונות וחסרונות
✅ יתרונות
- דטרמיניזם (היכולת לחזות מראש): מבטיח שפעולות קריטיות יושלמו במסגרת זמן ספציפית וניתנת לחיזוי.
- בטיחות ואמינות: חיוני עבור יישומים קריטיים לבטיחות כמו מכשירים רפואיים ומערכות בקרת רכב.
- היענות (Responsiveness): מספק חוויה מיידית למשתמשים ביישומים כמו משחקים מקוונים או צ'אט.
❌ חסרונות
- מורכבות: פיתוח ואיתור באגים במערכות זמן אמת, במיוחד אלו הקשיחות, הוא מורכב ודורש כלים ומומחיות מיוחדים (כמו RTOS).
- עלות: חומרה ותוכנה מיוחדות הדרושות למועדים מחמירים (במיוחד זמן אמת קשיח) יכולות להיות יקרות.
- ניהול משאבים: דורש הקצאת משאבים קפדנית (מעבד, זיכרון) כדי להבטיח עמידה תמיד במועדים, מה שהופך אותה לפחות גמישה ממחשוב כללי.
דוגמה: מסחר בתדירות גבוהה
במסחר בתדירות גבוהה (HFT), מחשבים מבצעים מספר רב של פקודות בשברירי שנייה. זוהי דוגמה למערכת זמן אמת יציב (Firm Real-Time).
- אירוע: מחיר מניה משתנה.
- תהליך: מערכת ה-HFT חייבת לנתח באופן מיידי את שינוי המחיר ולקבוע אם יש לבצע פקודת קנייה או מכירה.
- מועד אחרון: אם המערכת מתעכבת יתר על המידה (אפילו כמה מילישניות), ההזדמנות עלולה להיעלם, או שמחיר המניה עלול להשתנות שוב, מה שהופך את המסחר המחושב ללא רווחי או מסוכן. התוצאה (אות המסחר) חסרת תועלת לאחר חלון ההזדמנויות נסגר. המערכת לא כושלת באופן קטסטרופלי, אך ערכה הכלכלי הוא אפס.
