Remember Remember The 5 th of November. תרגול 2 קובץ סדרתי.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
תרגילי חזרה. General Things to Remember Be careful to identify if we’re talking about gains or costs (because the search cost is always negative) Check.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
A. Frank File Organization Indexed-Sequential File Measurements Thanks to Tamar Barnes.
A. Frank File Organization Hardware Time Parameters.
מכונת מצבים תרגול מס' 4 Moshe Malka.
מתמטיקה בדידה תרגול 3.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
פה מחלקים דיסקים ?. platter surface Reading head tracks sectors cylinder Magnetic Disk rotating מבנה הדיסק הדיסק מחולק לצלחות (platters) לכל צלחת יש ראש.
משטר דינמי המשך – © Dima Elenbogen :55 חידה שכדאי לעבור עליה: 2011/ho/WCFiles/%D7%97%D7%99%D7%93%D7%94%20%D7%A2%D7%9D%20%D7%91%D7%95%D7%A0%D7%95%D7%A1.doc.
תרגול 8 עצי B+ אינדקס משני.
A. Frank File Organization קובץ ישיר מתקדם Advanced Direct File.
Inverse kinematics (Craig ch.4) ב"ה. Pieper’s solution נתבונן ברובוט עם 6 מפרקי סיבוב כאשר שלושת הצירים של המפרקים האחרונים נחתכים. נקודת החיתוך נתונה.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
Na+ P-. הפוטנציאל האלקטרוכימי אנרגיה חופשית ל - 1 mole חומר. מרכיב חשמלי מרכיב כימי מרכיבי הפוטנציאל האלקטרוכימי של חומר X: המרכיב הכימי : RTlnC x R –
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
A. Frank File Organization Indexed-Sequential File Introduction Thanks to Tamar Barnes.
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
A. Frank File Organization Sequential File Measures.
מרצה: פרופסור דורון פלד
A. Frank File Organization Pile File Measures. 2 A. Frank Steps in analysis of file organization בהערכת מבנה קובץ, נתייחס ל - 6 שלבים / צעדים : 1. תאור.
עיבוד תמונות ואותות במחשב אלכסנדר ברנגולץ דואר אלקטרוני : שיטות קידוד שיטות קידוד אורך מלת קוד ואנטרופיה אורך מלת קוד ואנטרופיה קידוד.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
משטר סטטי שערים לוגיים Wired Drives – © Dima Elenbogen 2009, Moshe Malka :29.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
ערמות ; מבני נתונים 09 מבוסס על מצגות של ליאור שפירא, חיים קפלן, דני פלדמן וחברים.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
A. Frank File Organization Introduction to Overflow Thanks to Tamar Barnes.
תרגול 7 עצי B
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
A. Frank File Organization Transfer Time/Rate Parameters.
הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353)
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
משטר דינמי – © Dima Elenbogen :14. הגדרת cd ו -pd cd - הזמן שעובר בין הרגע שראשון אותות הכניסה יוצא מתחום לוגי עד אשר אות המוצא יוצא מתחום.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
1 חישוב של אופרטורים רלציוניים Evaluation of Relational Operators.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
מתמטיקה בדידה תרגול 2.
A. Frank File Organization Hardware Size Parameters.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
ניתוח בחינת הבגרות במכניקה ומעבר..... מכניקה – שאלה 3.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
תרגול 3 RAID. 7/14/20152 עובדה : בעת שכלל החומרה מתקדם בצעדי ענק, התקדמות הדיסקים מבחינת זמן גישה ונפח איטית יותר. פיתרון : לעבוד עם מספר גדול של דיסקים,
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 7 ISP דוגמא נוספת.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
Sense (Gene) Anti-sense Anti- sense.
Data Structures Hanoch Levi and Uri Zwick March 2011 Lecture 3 Dynamic Sets / Dictionaries Binary Search Trees.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site:
. Sequence Alignment Tutorial #3 © Ydo Wexler & Dan Geiger.
מספרים אקראיים ניתן לייצר מספרים אקראיים ע"י הפונקציה int rand(void);
Formal Specifications for Complex Systems (236368) Tutorial #1
מבוא למדעי המחשב סיבוכיות.
SQL בסיסי – הגדרה אינדוקטיבית
עבודה עם נתונים באמצעות ADO.NET
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
Marina Kogan Sadetsky –
NG Interpolation: Divided Differences
Computer Programming תרגול 3 Summer 2016
Engineering Programming A
Computer Architecture and Assembly Language
Presentation transcript:

Remember Remember The 5 th of November

תרגול 2 קובץ סדרתי

6/28/20153 קובץ סדרתי – קובץ שהפעולות העיקריות עליו הן קריאת או כתיבת הקובץ מתחילתו ועד סופו. שאלה : כיצד לאחסן את הקובץ כך שזמן המעבר עליו ( קריאה או כתיבה ) יהיה קטן ככל האפשר.

6/28/20154 תשובה : זמן הקריאה ( כתיבה ) מורכב משלושה גורמים, זמן תזוזת זרוע + זמן השהיית סיבוב + זמן ההעברה – זמן ההעברה הוא זמן שאינו תלוי בצורה בה הקובץ מסודר על הדיסק, זה תלוי רק בגודל הקובץ, ( או בגודל המידע שקוראים ). – לעומת זאת זמן השהיית סיבוב וזמן תזוזת זרוע כן תלויים באופן בו מסודר הקובץ, ולכן נרצה שתזוזת הזרוע תהיה מינימאלית. ניתן לקבל זאת ע " י כתיבת הקובץ על גלילים סמוכים באופן סדרתי ובכל גליל על מסילות עוקבות גם כן באופן סדרתי.

6/28/20155 קריאה ( כתיבה ) סדרתית : זמן קריאה ( כתיבה ) סדרתית של קובץ מתחילתו ועד סופו. זמן קריאה ( כתיבה ) סדרתית של קובץ המסודר בגלילים סמוכים מורכב מהגורמים : 1. זמן הגעה לתחילת הקובץ. 2. זמן ההעברה של הקובץ. 3. זמן המעבר בין מסילות עוקבות באותו גליל. 4. זמן המעבר בין גלילים עוקבים.

6/28/20156 זמן המעבר בין משטחים באותו גליל אפשרות אחת : לסדר את תחילת המסילות בגליל בדיוק זו מעל זו. תחילת מסילה 1 2 3

6/28/20157 נניח שסיימנו לקרוא ( לכתוב ) את המסילה הראשונה בגליל ורוצים להתחיל לקרוא את המסילה הבאה, שנמצאת במשטח הסמוך ( מסילה שתיים ). במצב הזה הראשים נמצאים בדיוק מעל סוף ( התחלת ) המסילות, וצריך רק להעביר פיקוד לראש הקורא של המשטח הבא, על מנת שיתחיל לקרוא ( לכתוב ). זמן המיתוג : הזמן שלוקח עד שהראש במשטח הבא " מתיישב מעל המסילה " ויכול להתחיל לקרוא ( לכתוב ). זמן המיתוג אכן קטן אך הוא קריטי, כי הראש עלול " לפספס " את תחילת המסילה בגלל הסיבוב. במקרה כזה, זמן המעבר בין משטחים באותו גליל הוא בדיוק זמן סיבוב שלם.

6/28/20158 אפשרות שנייה : לסדר את תחילת המסילות בגליל כך שלא יהיו בדיוק זו מעל זו, אלא נוסיף תזוזה קבועה בין כל שתי מסילות עוקבות באותו גליל, ונקרא לה דירוג בין מסילות. תחילת מסילה תחילת סקטור ראשון

6/28/20159 במקרה הזה, ובהנחה שהדירוג הוא " אופטימאלי " לא נצטרך להמתין זמן סיבוב שלם במעבר בין מסילות, אלא רק זמן מעבר מינימאלי התלוי אך ורק בגודל הדירוג. דוגמא : נתון כי זמן סיבוב הוא, במסילה יש 10 סקטורים. כמה זמן לוקח לקרוא גליל בעל 5 משטחים כאשר נקודת ההתחלה של כל שתי מסילות עוקבות מדורגת בסקטור ? תשובה : זמן העברה : זמן מעבר בין משטחים : סה " כ :

6/28/ הסבר : נניח כי בכל מסילה יש 4 סקטורים ( כדי שהציור יהיה ברור )

6/28/ אחרי קריאת המסילה הראשונה : הראש של המסילה הראשונה יהיה מעל סוף סקטור 4 ( תחילת סקטור 1). הראש של המסילה השנייה יהיה מעל סוף סקטור 3 ( תחילת סקטור 4). ולכן מספיק לחכות זמן מעבר של סקטור אחד עד שהראש הקורא יהיה מעל תחילת סקטור 1 במסילה השנייה. כנ " ל עבור כל שאר המעברים, יש 4 מעברים כאלה בין מסילות סמוכות, וכל מעבר דורש המתנה של מעבר סקטור אחד. הניתוח הנ " ל תקף גם עבור 10 סקטורים במסילה.

6/28/ זמן המעבר בין גלילים בקריאה סדרתית אפשרות אחת : נקודות ההתחלה של כל המסילות באותו משטח הן על אותו רדיוס ( אחת מול השנייה ). במקרה הפשוט בו אין דרוג בין מסילות עוקבות בגליל - זמן מעבר בין גלילים שווה לכפולה השלמה הקטנה ביותר של זמן סיבוב שעדיין גדולה מזמן תזוזת זרוע. ( כאשר הקובץ מסודר על גלילים עוקבים אז מתייחסים לתזוזת זרוע מינימאלית – ובדרך כלל זמן זה קטן מזמן סיבוב ).

6/28/ דוגמא : שני משטחים בכל גליל. ארבעה סקטורים בכל מסילה. דרוג סקטור בין מסילות עוקבות באותו גליל. נקודות ההתחלה של כל המסילות באותו משטח הוא על אותו רדיוס. תזוזת זרוע מינימאלית שווה לזמן העברת סקטור.

6/28/ גליל 2 גליל 1

6/28/ הסבר : בסיום קריאת הגליל הראשון הראש הקורא נמצא בין סקטורים 1 ו - 2, יחסית למשטח הראשון בגליל השני. כלומר כדי שתחילת סקטור 1 במסילה 1 בגליל 2 תגיע אל מתחת לראש הקורא נצטרך לחכות מעבר של 3 סקטורים זמן זה כולל גם תזוזת זרוע וגם זמן השהיית סיבוב.

6/28/ אפשרות שנייה : על מנת למזער את זמן המעבר בין גלילים, ניתן לסדר את תחילת המסילות העוקבות בגלילים עוקבים כך שתהיה ביניהם תזוזה קבועה של סקטורים. ונקרא לזה דירוג בין גלילים.

6/28/ שאלה 1 נתון דיסק עם הנתונים הבאים : 100 גלילים 30 משטחים בגליל 32 סקטורים במסילה זמן סיבוב 16 msec זמן תזוזת זרוע ממוצעת 16 msec זמן תזוזת זרוע מינימלית 2.1 msec השהיית המיתוג 0.4 msec

6/28/ מה צריך להיות הדירוג בין שתי מסילות עוקבות באותו גליל ? 2. מה צריך להיות הדירוג בין שתי מסילות עוקבות בגלילים עוקבים ? 3. בהנחה שהמסילות מדורגות, באיזה סקטור תתחיל המסילה ה -k- ית בגליל ה -n- י ? 4. כמה זמן לוקחת קריאה סדרתית של 50 גלילים סמוכים ?

6/28/ תשובות : 1. זמן מעבר על סקטור הוא, מעבר בין שתי מסילות עוקבות קטן מזמן מעבר על סקטור אחד, ולכן דירוג של סקטור אחד יספיק.

6/28/ מה צריך להיות הדירוג בין שתי מסילות עוקבות באותו גליל ? 2. מה צריך להיות הדירוג בין שתי מסילות עוקבות בגלילים עוקבים ? 3. בהנחה שהמסילות מדורגות, באיזה סקטור תתחיל המסילה ה -k- ית בגליל ה -n- י ? 4. כמה זמן לוקחת קריאה סדרתית של 50 גלילים סמוכים ?

6/28/ תשובות : 1. זמן מעבר על סקטור הוא, מעבר בין שתי מסילות עוקבות קטן מזמן מעבר על סקטור אחד, ולכן דירוג של סקטור אחד יספיק. 2. זמן מעבר בין שני גלילים עוקבים הוא זמן זה גדול ממעבר על 4 סקטורים וקטן מזמן מעבר על 5 סקטורים, ולכן צריך דירוג של 5 סקטורים.

6/28/ מה צריך להיות הדירוג בין שתי מסילות עוקבות באותו גליל ? 2. מה צריך להיות הדירוג בין שתי מסילות עוקבות בגלילים עוקבים ? 3. בהנחה שהמסילות מדורגות, באיזה סקטור תתחיל המסילה ה -k- ית בגליל ה -n- י ? 4. כמה זמן לוקחת קריאה סדרתית של 50 גלילים סמוכים ?

6/28/ תשובות : 3. בכל גליל יש 30 מסילות, לכן יש 29 דירוגים של סקטור אחד בתוך כל גליל ודירוג של 5 סקטורים בין המסילה האחרונה בגליל למסילה הראשונה בגליל העוקב, לכן סה " כ יש 34 דירוגים בין מסילה ראשונה בגליל למסילה ראשונה בגליל עוקב. מכאן אם מסילה ראשונה בגליל מתחילה בסקטור 0 אז מסילה ראשונה בגליל עוקב תתחיל בסקטור 34-32=2, ולכן מסילה ראשונה בגליל מספר n תתחיל בסקטור (2*n) mod 32, וצריך להוסיף דירוג של k סקטורים כדי לחשב עבור המסילה ה -k- ית. ולכן סה " כ המסילה תתחיל בסקטור : (2*n + k) mod 32

6/28/ מה צריך להיות הדירוג בין שתי מסילות עוקבות באותו גליל ? 2. מה צריך להיות הדירוג בין שתי מסילות עוקבות בגלילים עוקבים ? 3. בהנחה שהמסילות מדורגות, באיזה סקטור תתחיל המסילה ה -k- ית בגליל ה -n- י ? 4. כמה זמן לוקחת קריאה סדרתית של 50 גלילים סמוכים ?

6/28/ תשובות : 4. זמן הגעה לתחילת הקובץ : זמן העברה של 50 גלילים : זמן מעברי מסילות : זמן מעברי גלילים : סה " כ :

6/28/ מעבר אקראי על קובץ הוא קריאה ( כתיבה ) של כל הקובץ כאשר בכל רגע הכתובת של הבלוק הבא לקריאה ( לכתיבה ) יכולה להיות כתובת כלשהי בקובץ. זמן מעבר אקראי על הקובץ, כאשר בכל גישה קוראים בלוק אחד הוא :

6/28/ שאלה 2 נתון דיסק בעל הנתונים הבאים : N גלילים 10 משטחים בגליל מהירות סיבוב v סיבובים לשנייה תזוזת הזרוע נתונה ע " י הנוסחא :

6/28/ א. כמה זמן תיקח קריאה אקראית של 5 גלילים סמוכים, כאשר בכל גישה קוראים מסילה שלמה ?

6/28/ תשובה א : כאשר T הוא זמן תזוזת ממוצעת בין 5 גלילים. בגלל ש - 5 גלילים אינו מספר גדול, לא ניתן להשתמש ב - 5/3 כמספר הממוצע למרחק בגלילים בין שתי קריאות עוקבות. נחשב את T ישירות ע " פ הטבלה הבאה שמסכמת את כל המעברים האפשריים :

6/28/ ( תוכן הטבלה הוא d : המרחק בגלילים בין המקור ליעד ) גליל יעד גליל מוצא

6/28/ כל האפשריות שוות הסתברות ולכן :

6/28/ א. כמה זמן תיקח קריאה אקראית של 5 גלילים סמוכים, כאשר בכל גישה קוראים מסילה שלמה ? ב. כעת הנח כי, זמן המיתוג 0 ומסילות מתחילות בדיוק זו מעל זו. האם תוכל לתת ביטוי מדויק יותר ?

6/28/ תשובה ב : כעת ניתן לחשב את T בצורה מדויקת שתכלול גם את זמן המתנת סיבוב בנוסף לזמן תזוזת זרוע. ולכן הנוסחא כעת תהיה : נחשב את T בדומה לסעיף א, ע " י טבלה שתכיל את כל המעברים האפשריים :

6/28/ ( תוכן הטבלה הוא T: זמן תזוזת הזרוע בין המקור ליעד + זמן השהיית סיבוב ) גליל יעד גליל מוצא

6/28/ נציב בנוסחא ונקבל כי הזמן הכולל הוא :

שאלה 1 ממועד א ' אביב תשס " א שאלות דרג את הגלילים. עבור כל מסילה כתוב באיזה סקטור היא מתחילה. כמה זמן תיקח קריאה של סקטור אקראי ? כמה זמן יקח לקרוא קובץ סדרתי שלוקח את כל הדיסק כאשר הדיסק מדורג ? כנ " ל כאשר הדיסק אינו מדורג נתון דיסק בעל הפרמטרים : 10 גלילים בכל גליל 10 משטחים בכל מסילה 15 סקטורים זמן מיתוג – 1ms זמן מעבר על d גלילים : 3+d(ms) זמן סיבוב – Trot=40 6/28/ בהינתן מפתח X. כאשר הדיסק אינו מדורג וכל סקטור מכיל מפתח, כמה זמן לוקח בממוצע למצוא את הסקטור בעל המפתח X בהינתן שקיים כזה ?