1 / 34

ברוכים הבאים למת"ם !

ברוכים הבאים למת"ם !. 234122. אדמיניסטרציה. מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. אתר הבית: http://webcourse.cs.technion.ac.il/234122 האתר מכיל מידע רב וחשוב המתעדכן במהלך הסמסטר

floria
Download Presentation

ברוכים הבאים למת"ם !

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ברוכים הבאים למת"ם! 234122

  2. אדמיניסטרציה • מטרת הקורס: לימוד תכנון וכתיבת תוכניות מורכבות תוך שמוש בכלי פתוח תוכנה מתקדמים. • אתר הבית:http://webcourse.cs.technion.ac.il/234122 האתר מכיל מידע רב וחשוב המתעדכן במהלך הסמסטר • קבלת e-mail מהקורס: בכדי להרשם לרשימת ה e-mail של הקורס, יש להיכנס לאתר http://grades.cs.technion.ac.il, להיכנס ללשונית Settings/AutoUpdate ולוודא כי תחת "Announcements Update" מסומן e-mail. • תרגילי בית: במהלך הסמסטר ינתנו 4 תרגילי בית בנושאים הבאים:C – 5% ADT – 10% C-Shell – 5% C++ - 10%

  3. אדמיניסטרציה • לכל תרגיל ישנו מתרגל האחראי על התרגיל. במידה ויהיו שאלות הנוגעות לתרגיל מסוים, יש להפנותם למתרגל האחראי על התרגיל. • התרגילים דורשים הרבה עבודה, מומלץ לעשותם בזוגות. • הגשת תרגילי בית: יש להגיש עותק מודפס של תרגיל הבית לתא של הקורס, וגם לבצע הגשה ממוחשבת דרך אתר הקורס. • הגשה באיחור תגרור הורדה של 5 נקודות עבור כל יום איחור.

  4. עבודה עם T2 • התרגילים נבדקים אוטומטית ב-T2 אשר הינו מחשב UNIX • קיימות מס' אפשרויות עבודה: • לפתח ב-PC, להעביר ל-T2 בעזרת תוכנת FTP • לעבוד על ה-T2 בתקשורת מרחוק, מ-PC • לעבוד ישירות בסביבת UNIX: מחשבי LINUX בחווה • לעבוד בסביבה דמויית UNIX מ-PC

  5. תקשורת מרחוק • Telnet • יתרונות: פשוט מאוד, לא צריך להתקין כלום • חסרונות: לא גרפי, לא מאובטח • SSH • יתרונות: מאפשר הרצת תוכנות גרפיות, מאובטח • חסרונות: דורש התקנה (של SSH ושל Exceed לצורך תוכנות גרפיות), עבודה מול ה-t2 לפעמים מאוד איטית התקנה והסברים - מהאתר של הפקולטה: Computing Services -> Services -> software support -> SSH -> Exceed

  6. תקשורת מרחוק – המשך... • Go-Global • יתרונות: בנוסף ליתרונות של SSH לא דורש התקנה מיוחדת, נכנסים דרך אתר אינטרנט. • חסרונות: עבודה מול ה-t2 לפעמים מאוד איטית http://www.technion.ac.il/GG/IPviewer.html

  7. עבודה ישירה בסביבת UNIX • בחווה ישנם מחשבי LINUX עליהם מותקנים כל התוכנות אשר נדרשות לקורס מת"ם • קיים יועץ בחווה העוזר למשתמשים מתחילים • יתרון: עובדים על מחשב שאינו עמוס כמו ה-t2 בסביבה זהה ל-t2 • חסרון: אי אפשר לעבוד מהבית...

  8. סביבה דמויית UNIX • Cygwin – סביבה דמויית UNIX הרצה על windows • יתרונות: קלה להתקנה, עובדים על ה-PC בבית ואין בעיות של עומס כמו על ה-t2 • חסרונות: ישנם מס' הבדלים מעבודה על UNIX רגיל: סיומות קבצים, תו שונה בסוף שורה וכו'. www.cygwin.com

  9. UNIX בסיסי

  10. Unix בסיסי • Unix היא מערכת הפעלה בה נשתמש ב-t2. • תוכנית בשםshell מפרשת פקודות שהמשתמש נותן למערכת • העבודה מתבצעת בצורה טקסטואלית ולא גרפית. • לאחר הכניסה ל-t2 יוצג prompt. prompt הנו סימן שמשמעותו שהמחשב מוכן לבצע פקודה. • לאחר שה prompt מוצג ניתן לתת למחשב כל פקודה שהיא ואח"כ להקיש Enter. המחשב יבצע את הפקודה , ולאחר שיסיים יציג שוב את ה prompt בכדי שנוכל לתת לו את הפקודה הבאה. < cat file1 this is the content of file1 <cat file2 This Is file2 <

  11. מערכות הקבצים ב-Unix • קובץ ב - Unix הוא אוסף סדור של תוים. אין הגבלה על מה יכול קובץ להכיל. קובץ יכול להכיל למשל טקסט ע"י תוי ASCII או להיות קובץ הרצה. • אין גם כמעט מגבלות על שמו של קובץ או אורכו. מלבד מספר תוים שמורים כמו * & יכול שם קובץ להכיל כל צרוף של תוים. מקובל ששם קובץ הוא מהצורה <name>.<extension> למשל: test.c - קובץ מקור בשפת C hello.o - קובץ object שימו לב: • ב - Unix אין מגבלה על אורך ה extension • ב - Unix לקובץ הרצה יכול להיות כל שם שהוא. (אין הכרח שתהיה סיומת .exe או דבר דומה).

  12. מערכות הקבצים ב- Unixהמשך • Unix הנה מערכת מרובת משתמשים. לכל משתמש יש חשבון משלו במחשב. חשבון זה מקנה מרחב מסוים על הדיסק שבו רק הוא יכול להשתמש. • ב- Unix, כמו ב MS-DOS וב-Windows, יש מדריכים (Directories) שבהם ניתן לשמור קבצים קרובים ביחד. ב- Unix מבנה המדריכים יכול להראות כדלקמן:

  13. מערכות הקבצים ב- Unixהמשך • במערכת הנ"ל ישנם שני משתמשים, ari ו- uri. הם יכולים ליצור מדריכים עם אותם שמות • המדריך העליון של כל משתמש נקרא מדריך ה-home שלו. כאשר משתמש נכנס לחשבון שלו, הוא נמצא במדריך ה home שלו. • ניתן לציין קבצים (או מדריכים) לפיpathnamesfull או relative pathnames Hello.c

  14. פקודות לעבודה עם ספריות pwd לראות באיזה מדריך הנך נמצא cd <directory name> לעבור למדריך אחר לעבור למדריך מעל המדריך הנוכחי (parent directory): לחזור ל home directory: (ללא פרמטרים)>cd >pwd /usr/ari >cd progs >pwd /usr/ari/progs > cd .. >pwd /usr/ari

  15. פקודות לעבודה עם ספריות - המשך ls <directory name> לראות את רשימת הקבצים במדריך. לדוגמא, לראות את הקבצים במדריך הנוכחי: >ls progs לראות את הקבצים בתת-מדריך progs: > ls progs hello hello.c

  16. פקודות לעבודה עם ספריות -המשך ניתן לראות את רשימת הקבצים באופן מפורט יותר: מס' לינקים מס' בתים שם הקובץ > ls -al drwxr-x---14 ari 1536 Aug 5 14:04 . drwxr-xr-x 48 root 1024 Aug 1 04:30 .. -rw------- 1 ari 2425 Mar 12 11:59 .login -rw-r--r-- 1 ari 2425 Mar 12 11:59 moshe drwx------ 2 ari 512 May 13 03:30 progs הרשאות בעל הקובץ התאריך האחרון שהקובץ שונה

  17. פקודות לעבודה עם ספריות - המשך mkdir <directory name> ליצור מדריך חדש. לדוגמא, ליצור מדריך בשם docs: rmdir <directory name> למחוק מדריך. לדוגמא, למחוק את המדריך docs: ניתן למחוק מדריך רק אם הוא ריק. > mkdir docs > ls docs progs > ls docs > > rmdir docs > ls progs

  18. פקודות לעבודה עם קבצים וספריות cp [options] file1 file2 cp [options] file1 file2… directory העתקת file1 ל file2 או העתקת אחד או יותר קבצים ל directory. אם קובץ היעד קיים, קובץ המקור נכתב עליו. אם ה directory קיים, הקובץ נכתב בתוך המדריך.אופציות: -iבקש אישור לפני מחיקת קובץ קיים. -rהעתק רקורסיבית מדריך עם כל קבציו ותת-המדריכים בו. יצירת עותק נוסף של המדריך my-dir בשם new-dir יצירת עותק נוסף של hello.c בשם prog1.c: העתקת hello.c ו prog1.c למדריך progs: > cp -r my-dir new-dir > cp hello.c prog1.c > ls hello.c prog1.c > cp hello.c prog1.c progs > ls progs hello.c prog1.c

  19. >rm –rf * פקודות לעבודה עם קבצים וספריות -המשך rm [options] files • מוחקת file אחד או יותר. כדי למחוק קובץ צריכה להיות הרשאת כתיבה למדריך בו נמצא הקובץ. אם אין הרשאת כתיבה לקובץ תתבקש לתת אישור למחיקה. • אופציות: -f מחק קבצים בלי הרשאת כתיבה ללא אישור. -i בקש אישור לפני מחיקת כל קובץ. -r אם file הוא מדריך מחק אותו ואת כל תכולתו כולל תת-מדריכים. אזהרה: פקודה זו יכולה להיות הרסנית. הערה: ב - Unix אין עקרונית אפשרות לשחזר קבצים שנמחקו.

  20. פקודות לעבודה עם קבצים וספריות -המשך mv [options] sources target משמשת להעברה של קבצים ומדריכים במערכת או נתינת שמות חדשים להם. האפשרויות הן: > mv old_file_name new_file_name שם הקובץ old_file_name משתנה ל new_file_name במידה וקובץ בשם new_file_name קיים במדריך הנוכחי, הקובץ הקיים נמחק (overwritten). > mv old_dir_name new_dir_name שם המדריך old_dir_name משתנה ל new_dir_name במידה ומדריך בשם new_dir_name קיים במדריך הנוכחי, old_dir_name נהיה תת מדריך של new_dir_name ! > mv file1 file2 … dir_name הקבצים file1, file2 … מועברים למדריך dir_name. • אופציות: -i בקש אישור לפני מחיקת קובץ קיים.

  21. פקודות לעבודה עם קבצים וספריות- המשך mv [options] sources target דוגמאות: להזיז את הקובץ prog2.c ל מדריך progs: לשנות את שמו של הקובץ hello.c ל- prog2.c: > mv prog2.c progs > ls progs hello.c prog1.c prog2.c > mv hello.c prog2.c > ls prog2.c

  22. הרשאות קבצים • לכל קובץ יש הרשאות שקובעות למי מותרת הגישה לקובץ ולצורך אילו פעולות. כאשר קובץ חדש נוצר רשום בו מי יצר אותו והוא נקרא בעל הקובץ. • ישנם 3 סוגים של משתמשים העשויים לגשת לקובץ: 1. User - בעל הקובץ. 2. Group - משתמש ששייך לקבוצה של בעל הקובץ. 3. Other - כל שאר המשתמשים במערכת שאינם בנ"ל. • לכל סוג משתמש יש 3 הרשאות שונות: 1. Read - האם מותר לו לקרוא (להעתיק) את הקובץ. 2. Write - האם מותר לו לכתוב על (לשנות) את הקובץ. 3. Execute - האם מותר לו להריץ את הקובץ.

  23. הרשאות קבצים המשך r w x r w x r w x > ls -al drwxr-x---14 ari 1536 Aug 5 14:04 . drwxr-xr-x 48 root 1024 Aug 1 04:30 .. -rw------- 1 ari 2425 Mar 12 11:59 .login -rw-r--r-- 1 ari 2425 Mar 12 11:59 moshe drwx------ 2 ari 512 May 13 03:30 progs user group other

  24. שיטה ראשונה: mode הוא שרשור תוים של who, opcode ו permission. who הוא אופציונלי (ברירת המחדל היא a). Opcode + - Add permission -- Remove permission = - Assign permission (and remove permission ofthe unspecified fields). Permission r - Read w - Write x - Execute Who u - User g - Group o - Other a – All שינוי הרשאות קבצים chmod mode files --------- --x------ >chmod u+x file rwxr-xr-x rwxrwxrwx >chmod g-w,o-w file r--r--r-- >chmod =r file rwxr-xr-- >chmod u=rwx, g=rx, o=r file

  25. שינוי הרשאות קבצים chmod mode files שיטה שנייה: >chmod 777 file >chmod 444 file

  26. הרשאות לספריות • גם לספריות ישנן הרשאות • הספריות ב - Unix מאפשרות לכל משתמש לבנות מערכת קבצים היררכית בצורה של עץ. שורש העץ יהיה ה home directory של כל משתמש. הענפים יהיו המדריכים השונים והעלים יהיו הקבצים עצמם. • ב - Unix נשמר המידע על מדריך והקבצים המוכלים בו בקבצים מיוחדים. • למשל הקובץ המכיל את המידע על המדריך הנוכחי נקרא "." והקובץ המכיל את המידע על מדריך האב נקרא "..".

  27. הרשאות לספריות המשך • Execute – הרשאת כניסה לספרייה • Write – יצירת קבצים בספרייה • Read – לראות את רשימת הקבצים > ls -al drwxr-x--- 14 ari 1536 Aug 5 14:04 . drwxr-xr-x 48 root 1024 Aug 1 04:30 .. -rw------- 1 ari 2425 Mar 12 11:59 .login drwx------ 2 ari 512 May 13 03:30 progs האות d מסמנת שזהו ספרייה

  28. הרשאות הנידרשות לביצוע פקודות לספריות • Execute – הרשאת כניסה לספרייה • Write – יצירת קבצים בספרייה • Read – לראות את רשימת הקבצים >cd [dir] >mkdir directory >rmdir directory >ls

  29. תוכנות ב-Unix • דואר אלקטרוני • pine • עריכת קבצים • pico • emacs / xemacs • vim / gvim

  30. סקירת תוכן קבצים • הפקודה cat >cat file_1 file_2 … file_k מדפיסה את תוכן הקבצים file_1,file_2,…,file_k לפלט הסטנדרטי • הפקודה head [-n] [files] מדפיסה רק מספר מהשורות הראשונות של קובץ. האופציה -n מאפשרת להדפיס n מהשורות הראשונות (ברירת המחדל היא 10). >head -20 phone ידפיס את 20 השורות הראשונות בקובץ phone • הפקודה tail [options] [files] מדפיסה רק מספר מהשורות האחרונות של קובץ האופציה -nמאפשרת להדפיס את n השורות האחרונות בקובץ (ברירת המחדל היא 10). האופציה +n מאפשרת להדפיס את כל השורות האחרונות החל מהשורה ה n -ית בקובץ.

  31. שילוב תוכניות • נרצה להדפיס את השורות השניה והשלישית של קובץ בשם myfile • יצרנו קובץ זמני בשם first3 אשר נידרש למחקו אח"כ • נראה דרך פשוטה יותר לביצוע משימה זו של הפניית פלט של תוכנית אחת לקלט של התוכנית הבאה ע"י שמוש ב pipelining – העברה ישירה של פלט של תוכנית אחת לקלט של תוכנית אחרת > head –3 < myfile > first3 > tail –2 < first3

  32. פקודות שימושיות נוספות more <file name> less <file name> man <command name> להציג קובץ על המסך עם עצירה אחרי כל דף >more prog2.c לקרוא מידע מפורט על פקודה >man ls>man man

  33. Pipelining <program1> | <program2> program2 לוקחת כקלט את הפלט של program1. ניתן לבצע שרשור מסוג זה למספר תוכניות, כך שכל תוכנית לוקחת כקלט את הפלט של קודמתה, ומעבירה את הפלט שלה לבאה אחריה ברשימה > cat myfile | head –3 | tail –2 >ls aaa bbb ccc ddd >ls | head –3 aaa bbb ccc

  34. הפקודה tee tee [options] [files] • לעיתים נרצה לשמור את הפלט אשר מוציאה פקודה הנמצאת באחד השלבים הפנימיים של ה piepeline • הפקודה משכפלת את כל מה שנכנס לקלט הסטנדרטי שלה ושולחת אותו הן לפלט הסטנדרטי והן לכל אחד מהקבצים ב [files] • לדוגמא: אם בנוסף להצגת השורה השניה והשלישית נרצה לשמור את שלושת השורות הראשונות של הקובץ myfile בשני קבצים שונים, נוכל לבצע : • אופציות נוספות: • האופציה -a מאפשרת שרשור של הפלט לסוף הקבצים [files] במקום מחיקתם. > head –3 myfile | tee file1 file2 | tail –2

More Related