מערכת זמן אמת – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
MerlIwBot (שיחה | תרומות)
מ בוט משנה: zh:实时计算zh:实时
Artium (שיחה | תרומות)
הסרת פרטים לא רלוונטיים. תיקון טעיות. בעקרון שכתבתי את הערך מחדש.
שורה 1:
'''מערכת זמן אמת''' היא מערכת מחשב שלהשיש ישלה, דרישותמעבר לביצועיםלדרישות במגבלותהפונקציונליות זמןהרגילות, מסוימותדרישה שנקבעושל מראשעמידה בזמנים. מערכת זוזמן אמת לא חייבת להגיב מהר, אך היא חייבת להגיב תוך הזמן שהוגדר בדרישות והיא יכולהחייבת להיותלבצע תוכנהזאת אוכל חומרהפעם.
 
==סוגי מערכות==
ניתן לסווג מערכות זמן אמת נחלקות לשנילשלושה סוגים:
=== Hard real-time ===
במערכות כאלה מובטח כי זמן העיבוד של קלט ל'''עולם''' לא יעלה על זמן מסוים.
 
* '''Hard''' - מערכת זמן אמת קשיחה היא מערכת בה אי עמידה בתנאי הזמן גוררת כישלון כולל של כלל המערכת. אחרי כישלון זה אין אפשרות להמשיך בפעולת המערכת.
על אלגוריתמים שימומשו במערכות מסוג זה לעבוד ב[[סיבוכיות זמן]] [[אסימפטוטה|אסימפטוטית]] [[פונקציה לינארית|לינארית]], כלומר <math>\,O(n)</math>. כך מובטח שעבור כל גודל קלט - מהירות העיבוד של המערכת תשאר קבועה ביחס לגודל הקלט ולכן לעולם לא תבוצע חריגה מפרק הזמן שהובטח לעיבוד. במידה וזמן העיבוד גבוה מלינארי - הרי שככל שהקלט גדול יותר, כך כמות הקלט הממתינה לעיבוד גדלה עוד יותר - ובהכרח לבסוף תבוצע חריגה מפרק הזמן המותר שנקבע לעיבוד.
 
* '''Firm''' - במערכות כאלו ניתן לספוג אי עמידה בדרישת הזמן אך איכות המערכת תיפגע. הפלט של החישוב בו התרחשה החריגה הוא בלתי שמיש בעליל.
בשל האיטיות היחסית של אחסון הזיכרון המשני, במערכות Hard real-time, שטח הזיכרון המשני מוגבל או שלא נעשה בו כלל שימוש והמידע מאוחסן בזיכרון קצר טווח או ב[[ROM|זיכרון לקריאה בלבד]] (ROM). קיים קונפליקט בין דרישות אלו לדרישות של time-sharing systems, ולכן שילוב כזה לא נתמך על ידי [[מערכות הפעלה]] שנועדו למגוון מטרות (להבדיל ממערכות הפעלה ייעודיות).
 
* '''Soft''' - הפלט שהתקבל בעקבות חישוב שחרג מהזמן שימושי באופן חלקי.
=== Soft real-time ===
במערכות כאלה מובטח כי זמן המענה ה'''ממוצע''' לא יעלה על פרק זמן מסוים שנקבע מראש, ולכן זו דרישה מתירנית יותר. סוג זה שימושי ביישומים כגון [[מולטימדיה]] ו[[מציאות מדומה]] (virtual reality).
 
== פיתוח מערכות זמן אמת בגישה פורמלית ==
לעתים קרובות מערכות זמן אמת הן מערכות שתקינותן חיונית ועלולה להשפיע על חיי אדם. מערכות כאלו הן למשל מערכות ניווט, מערכות טייס אוטומטי, מערכות להסטת מסילות רכבת, מערכות רמזורים וכו'. כדי לוודא תקינות של מערכות כאלו משתמשים לעתים ב[[מערכת הוכחה אוטומטית|מערכות הוכחה אוטומטיות]] (מערכות המבצעות [[בינה מלאכותית|הוכחת משפטים מתמטיים באמצעות תוכנה]]), כאשר כל פיתוח המערכת מבוצע תוך שימוש ב[[מודל מתמטי|מודלים מתמטיים]], וזה להבדיל מתהליך [[אימות תוכנה]] סטנדרטי של הרצת תרחישים שונים על ידי בודקי תוכנה אנושיים.
מערכות ההוכחה אוטומטיות למערכות זמן אמת עושות שימוש נרחב ב[[לוגיקת זמן]] (לוגיקה טמפורלית).
 
== ראו גם ==
* [[סיבוכיות זמן]]
* [[אימות תוכנה]]
* [[מתודולוגיית פיתוח תוכנה]]
* [[הבטחת איכות תוכנה]]
 
[[קטגוריה:הנדסת תוכנה]]