התחברות ל-t2

מסמכים קשורים
מדריך להתקנת Code Blocks מדריך זה נועד לתאר את תהליך התקנת התוכנה של הקורס "מבוא למחשב שפת C". בקורס נשתמש בתוכנת Code::Blocks עם תוספת )אשף( המתאימה

2013/14 אוניברסיטת חיפה מבוא למדעי מחשב, מעבדה מטרת המעבדה: לתרגל את המעבר מאלגוריתם לקוד C כמה שיותר. הוראות:.1.2 ניתן לעבוד ביחידים או בזוגות. (יש מ

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

Microsoft Word - Ass1Bgu2019b_java docx

Slide 1

מדריך למרצים ומתרגלים 1

WinZIP תוכנה לדחיסת קבצים ספטמבר 2007

משימה תכנית המתרגמת קטעי טקסט לשפה אחרת הקלט: קובץ המכיל את קטעי הטקסט וכן את השפה אליה רוצים לתרגם תרגול מס' 4: המתרגם שימוש במחלקות קיימות תכנות מתק

T01-1page

PowerPoint Presentation

ייבוא וייצוא של קבצי אקסל וטקסט

ex1-bash

תוכנה חופשית מאחורי הקלעים? על סדר היום: קצת על עצמי מה זאת תוכנה חופשית? ההיסטוריה של תוכנה חופשית כיצד תוכנה חופשית משתלבת בשוק התוכנה היתרונות של ת

שאלה 2. תכנות ב - CShell

מהוא לתכנות ב- JAVA מעבדה 3

תשע"דד אביב תוכנה 1 תרגיל מספר 4 עיבוד מחרוזות וקריאה מקבצים הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..(

ת'' מדריך לבעלי תיבה קיימת במופ ומשתמשים ב Outlook 2003 או doc.2007 לפני שניגש להגדיר את תיבת המייל החדשה, נבצע גיבויי של המיילים ופנקס הכתובות מהחשבו

תרגול מס' 4: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש

Office 365 ProPlus בחינם לסטודנטים באוניברסיטת בן גוריון בנגב הוראות סטודנטים באוניברסיטת בן גוריון בנגב יכולים להוריד ולהתקין את חבילת התוכנה Office

Unix & Linux Basics,CSMA/CD vs CSMA/CA As a Collision Domain

יצוא לחשבשבת תוכן עיניינים הגדרות - חשבונות בנק...2 הגדרות - הגדרות חשבשבת... 3 הגדרות - כרטיסי אשראי... 4 הגדרות - סוגי הכנסה... 5 יצוא לחשבשבת...6 י

תורת הקומפילציה

מצגת של PowerPoint

מרצים יקרים, אתר המכללה מאפשר למרצי המכללה להזין את פרטיהם וקורות חייהם. זאת בדומה לאתרים מקבילים של מוסדות אקדמיים בארץ ובעולם. עמודי המרצים נועדו לא

Microsoft PowerPoint - Lecture1

תכנות מונחה עצמים א' – תש"ע

הנחיות הורדה ותפעול לספרים דיגיטלים. הוצאת כנרת, זמורה ביתן שמחה להגיש לכם, התלמידים, ספר דיגיטלי. הספרים עצמם הינם בקבצי PDF הניתנים להורדה ללא עלות

שאלהIgal : מערכים דו מימדיים רקורסיה:

Microsoft Word - sync_LG.doc

Microsoft Word IG Lab - Configure Wireless Router in Windows Vista.docx

(Microsoft Word - SQL\353\351\345\345\365 \341\361\351\361 \360\372\345\360\351\355 \ doc)

המשימה תרגול מס' 5: קלט-פלט במערכות הפעלה שונות יש סימונים שונים עבור ירידת שורה :)newline( ב- UNIX/Linux )Line Feed( \n ב- Windows )Carriage Return +

שאלהIgal : מערכים דו מימדיים רקורסיה:

סרגל כלים ל-Outlook או לExplorer- מדריך למשתמש

Slide 1

מכללת הדסה, הפקולטה למדעי המחשב מבוא לתכנות מונחה עצמים והנדסת תוכנה סמסטר א', תשע"ו תרגיל 2 תאריך אחרון להגשה: קמפוס הנביאים יום א', 29/11/2015 בשעה

פרויקט שורשים דמות

סדנת תכנות ב C/C++

מדריך להתחלה מהירה Microsoft Project 2013 נראה שונה מגירסאות קודמות, ולכן יצרנו מדריך זה כדי לעזור לך ללמוד להכיר אותו. סרגל הכלים לגישה מהירה התאם אי

מצגת של PowerPoint

Microsoft Word - UsingXMTenvironment.rtf

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

אוניברסיטת בן גוריון בנגב תאריך המבחן: שם המרצה: מר אלכסנדר שקולניק, בשפת JAVA מבחן ב: מבוא לתכנות מס' הקורס : מיועד לתלמידי : הנד

HTML - Hipper Text Makeup Language

People. Partnership. Trust מסלול Free פורטל החינוך מבית U-BTech מסלולים ומחירים חיבור לשירותי Office 365 ללא עלות פורטל התחברות הכולל ממשק למנב"ס ולסי

1 תבניות טקסט מהי תבנית טקסט? שימוש ב- Characters Meta שימוש ב- Expression Grouping שימוש ב- Quantifiers תת תבניות הפונקציה preg_match הפונקציה preg_m

<4D F736F F D20FAE5F1F4FA20ECE7E5E5FA20E3F2FA20ECE2E1E920E3E9F1F720FAEEE5F0E5FA20E6E9F8FA20E4F8F6E72E646F63>

People. Partnership. Trust שלבי הפרויקט והמסלולים השונים - פלטפורמת "קהילה לומדת" מסלול Free שלבי הפרויקט: חיבור לשירותי Office 365 ללא עלות פורטל התח

שאלהIgal : מערכים דו מימדיים רקורסיה:

מסע מדע ו - מסע ברכב שטח ביבשות רחוקות

רובוטיקה – מבוא

Titre du document en police Sodexo

דוגמאות שהוצגו בהרצאה 10 בקורס יסודות מערכות פתוחות דוגמה 1 דוגמאות של פונקציות ב- awk שמראות שהעברת פרמטרים של משתנים פשוטים היא by value והעברת פרמט

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

תוכן הגדרת שאלת רב-ברירה ]אמריקאית[...2 הגדרת שאלת נכון\לא נכון...8 שאלות אמריקאיות 1

PowerPoint Presentation

מערכות הפעלה

PowerPoint Presentation

מספר זהות: סמסטר ב' מועד א' תאריך: 11102/4// שעה: 9:22 משך הבחינה: 3 שעות חומר עזר: אין מותר השימוש במחשבון פשוט בחינה בקורס: מבני נתונים מרצה: הדר בי

מיכפל

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

מבוא למדעי המחשב

תרגיל בית מספר 1#

בס"ד תרגיל 3 מועד אחרון ל כללי בתרגיל זה עליכם לכתוב תוכנה שמדמה מאגר נתונים של חנות. את מוצרי החנות תייצגו באמצעות עצים ורשימות מקושרות יהיה עליכם לנ

אוניברסיטת בן גוריון בנגב תאריך המבחן: שקולניק אלכסנדר שם המרצה: מר בשפת JAVA מבוא לתכנות מבחן ב: מס' הקורס : הנדסת תעשיה וניהול מ

תאריך פרסום: תאריך הגשה: מבנה נתונים תרגיל 5 )תיאורטי( מרצה ומתרגל אחראים: צחי רוזן, דינה סבטליצקי נהלי הגשת עבודה: -את העבודה יש לה

פקולטה לחינוך מנהל סטודנטים Beit Berl College الكلية االكاديمية بيت بيرل 20/06/2016 י"ד/סיון/תשע"ו ייעוץ וירטואלי הרכבת מערכת )רישום לקורסים( באמצעות

Microsoft PowerPoint - L01-n.ppt

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

BIG DATA תיאור הקורס המונח Big Data הולך וצובר תאוצה בשנים האחרונות, הוא הופך למגמה רווחת בתעשייה. המשמעות הפרקטית של המונח Big Data הינה טכנולוגיות נ

Slide 1

PowerPoint Presentation

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

הגנה - שקפי תרגול

Slide 1

Microsoft PowerPoint - rec1.ppt

Linux חיבור מודם כבלים בממשק USB תחת המדריך נכתב ע"י ג'ס פורטנוי רישיון: GFDL לתגובות, הצעות והערות: לגרסה המעו

הטכניון מכון טכנולוגי לישראל אלגוריתמים 1 )443432( סמסטר חורף הפקולטה למדעי המחשב תרגול 9 מסלולים קלים ביותר תרגיל APSP - 1 עד כה דנו באלגור

Microsoft Word B

Microsoft Word - דוגמאות ב

מבוא למדעי המחשב

הוספת קישור לאתר אינטרנט תוכן ממשק בדיקת מטלות...3 איחוד אתרי קורסים...5 סל מחזור... 7 חידושים בפעילויות...8 תצורת קורס: כפתורים... 9 פורומים...10 שיפ

מבוא למדעי המחשב

ISI

PowerPoint Presentation

Microsoft PowerPoint - rec3.ppt

הקדמה מעתה תוכלו לצפות בתלוש השכר שלכם באופן ממוחשב, באמצעות מערכת חילן-נט. את סיסמת הכניסה הזמנית למערכת תמצאו בחלקו התחתון של תלוש השכר המודפס, שנשל

תרגול מס' 1

מבוא למדעי המחשב

I PRO Skills כישורים לעולם העבודה I CAN I AM I GROW I BUILD I NET I MIX כל הזכויות שמורות לג'וינט ישראל- תבת 2017

PowerPoint Presentation

Homework Dry 3

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

תמליל:

עבודה על השרת אפשרויות התחברות עבודה במחשב אישי 1

תרגילי הבית יבדקו ע"י הידור והרצת הקוד המוגש על שרת ה- t2 כתובת השרת היא t2.technion.ac.il לשם כך עליכם לדעת כיצד ניתן להתחבר אל השרת ולעבוד עליו תכנית שעובדת על המחשב הביתי שלכם אינה בהכרח נכונה עליכם לוודא את נכונותה בעזרת הידורה והרצתה על השרת ב- t2 קיימת מערכת הפעלה מסוג UNIX זו ולכן עליכם לוודא שהתכנית שלכם מתנהגת בצורה נכונה בסביבה 2

הדרכים הבאות הן הדרכים המומלצות לעבוד בקורס סגל הקורס לא יעזור בבעיות הצצות מעבודה בכלים אחרים, או מערכות הפעלה השונות מ- Windows ו- UNIX. למי שלא רגיל לעבוד בסביבת,UNIX לא מומלץ ולא הכרחי להתקין כל סוג של מערכת הפעלה UNIX רק עבור הקורס ולא תינתן תמיכה בהתקנת מכונות וירטואליות. קיימת תמיכה מלאה עבור אלה המשתמשים ב- Window. כדי לכתוב את התוכנה כך שתעבוד נכון על ה- t2 קיימות שתי אפשרויות: עבודה על השרת - כתיבת הקוד ובדיקתו על השרת לאורך כל הדרך עבודה על מחשב אישי וביצוע בדיקות על השרת מדי פעם. מומלץ ע"י סגל הקורס. אלה שבבעלותם מחשב MAC יצטרכו לעבוד על המחשבים בחווה. לא תינתן תמיכה בMAC לרבות שחרור גרסאות שיעורי בית ל- MAC. ע"י סגל הקורס, 3

בשיטה זו נשתמש בתוכנה כלשהי כדי להתחבר אל השרת דרך הרשת לאחר ביצוע ההתחברות נקבל חלון טרמינל אשר מקושר לחשבוננו במחשב המרוחק כל הפקודות שיוכנסו לטרמינל מתבצעות על המחשב המרוחק. עיקר העבודה יהיה בעזרת מנשק טקסטואלי ניתן גם להריץ תכניות עם מנשק גרפי 4

ניתן להתחבר t2 לשרת בשיטות הבאות: התחברות בעזרת SSH )מומלץ(: עבור מחשבים בסביבת windows יש להוריד את התוכנה מהכתובת הבאה: ftp://ftp.cs.technion.ac.il/pub/ssh-client/sshclient.exe עבור מחשבים בסביבת התחברות בעזרת Go-Global לינוקס ניתן פשוט להשתמש בפקודה )עבור :)Windows גלישה לכתובת http://www.technion.ac.il/gg/ipviewer.html עובד רק עם Internet Explorer ssh מחלון טרמינל. 5

עבודה על השרת אינה נוחה בגלל העומס הרב על השרת. ניתן לעבוד על מחשב בבית או בחווה ולהעביר את הקוד אל ה- t2 שימו לב שייתכנו הבדלים בין המחשבים ולכן מומלץ בסוף העבודה( לבדוק את נכונות הקוד על ה- t2 אחת לכמה זמן )ולא רק 6

עבודה ב- CDT.Eclipse סביבת העבודה המומלצת ע"י צוות הקורס משתמשת בקומפיילר דומה לזה שב- t2 ניתנת להרצה על windows או לינוקס מותקנת במחשבי החווה 7

עבודה במחשבי הלינוקס בחווה: השימוש בלינוקס יכול להקל במעט על מלאכת הדיבוג מאחר וכמות ההבדלים בין מחשב המריץ לינוקס ל- t2 קטנה יותר אך לא מומלצת עבור אלה שלא מנוסים בסביבת.UNIX התקנת :Cygwin Windows סביבה המדמה את UNIX עבור מחשבי 8

כדי להקל על השימוש במגוון הכלים הגדול אתר הקורס מכיל מספר מדריכים המסבירים את הפרטים הטכניים עבור שימוש בכלים הללו: מדריך התחברות ל- t2 : מפרט את הדרכים השונות מדריך עבור המדריכים לעבודה )כולל התקנת )Cygwin :Eclipse CDT מסביר את תהליך ההתקנה ויצירת פרויקט ראשון נמצאים באתר תחת בנוסף, ייערכו 3 תרגולי עזר אשר יתמקדו בהפעלה טכנית של כלים הדרושים בקורס.Course Material, Guides זמן התרגולים יוכרז בהמשך שקפי התרגולים זמינים באתר תחת Course Material, Auxiliary Tutorials 9

עבודה בחלון ה- shell הרשאות ערוצי קלט/פלט 10

ולבסוף שליחת Shell )קליפה( הוא כינוי לתוכנה המקשרת בין המשתמש לבין גרעין מערכת ההפעלה בדרך כלל המונח בשימוש עבור shell טקסטואלי עבודת ה- Shell מתבצעת על ידי קבלת פקודה מהמשתמש, ביצוע החלפות טקסט בפקודה בהתאם לתכונות ה- Shell הפקודה המעובדת למערכת ההפעלה דוגמאות ל- shell : Bash C-Shell Powershell )ברירת המחדל ברוב הפצות הלינוקס( )ברירת המחדל עבור מחשב ה t2( )windows מתקדם עבור shell( בקורס זה נלמד את Bash מלבד מנשק בסיסי לביצוע פקודות ה- Shell מקל עלינו את העבודה בעזרת תכונות מתקדמות, לדוגמה ההשלמה האוטומטית המתבצעת ע"י לחיצה על Tab ה- Shell יאפשר לנו להגדיר קיצורים, לחזור על פקודות, להתייחס למספר קבצים בנוחות ולהגדיר משתנים אשר נוכל להשתמש בהם בפקודות 11

לאחר ההתחברות מתקבל חלון טרמינל בחלון זה יכול המשתמש להכניס את הפקודה הבאה למחשב ולקבל את הפלט עבור פקודה זו הכנסת פקודה מתבצעת ע"י רישום שמה והפרמטרים שלה ולחיצה על Enter לכל הפקודות יש את המבנה הבא: > command [arg1] [arg2] [arg3]... ארגומנטים לפקודה שם הפקודה לביצוע prompt )לא מקלידים אותו( מספר הארגומנטים לפקודה משתנה בהתאם לפקודה ויכול להיות כל מספר )כולל 0( בשביל להתנתק בכל שלב ניתן לסגור את חלון הטרמינל או לרשום את הפקודה.exit 12

ניתן להשתמש בפקודה הבאה כדי לקבל את שם ה- Shell הנוכחי ב- Unix > echo $0 tcsh במחשבים בהם Bash אינה Shell ברירת המחדל )כמו בשרת ה- t2 לדוגמה(, ניתןלהשתמש בפקודה shell) chsh (change כדי לשנות את ברירת המחדל: > chsh Changing shell for mtm. old shell: /bin/tcsh New shell: /bin/bash Shell will be changed for mtm in approximately 5 minutes > חשוב להקפיד לכתוב את שם ה- Shell )הייחוס אליו( נכון, אחרת החשבון נהרס מלבד החלפת ה- Shell המשמש כברירת מחדל, ניתן תמיד להריץ Shell אחר כמו כל פקודה אחרת 13

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

> ls -l,ls -l user group other כדי לראות מהן ההרשאות ניתן להשתמש בפקודה לדוגמה: -rwx--x--x 1 mtm users 6647 Aug 31 17:25 a.out* -rw-r--r-- drwx------ 1 mtm users 3047 Jun 20 10:35 hello.c 2 mtm users 4096 Aug 31 17:23 private/ drwxrwxrwx 2 mtm users 4096 Aug 31 17:23 public/ שורת ההרשאות עבור כל קובץ היא רצף האותיות הבא: מצייני ההרשאות d rwxrwxrwx אם מופיעה אות ההרשאה קיימת אם מופיע מקף ההרשאה אינה קיימת התו d מציין אם מדובר בתיקיה 15

> chmod <mode> <files> בעל הקובץ רשאי לשנות את ההרשאות של הקובץ שינוי ההרשאות ניתן בעזרת הפקודה :chmod ו- permission opcode שרשור תווים המורכב מ- who, - <mode> אם לא מצוין,who ברירת המחדל היא a. Who Opcode Permission u - User + - Add permission r - Read g - Group - - Remove permission w - Write o - Other = - Assign permission x - Execute a - All > chmod u+x file > chmod g-w,o-w file > chmod =r file > chmod u=rwx, g=rx, o=r file --------- rwxrwxrwx --x------ rwxr-xr-x r--r--r-- rwxr-xr-- דוגמאות: 16

עבור תיקיות להרשאות המשמעות שונה: בתיקייה Read הרשאה לראות את רשימת הקבצים Write הרשאה של יצירת/מחיקת תיקייה או שינוי קבצים Execute הרשאת כניסה לתיקייה לדוגמה, מה ההרשאות הנדרשות לביצוע כל אחת מהפעולות הבאות? > cd my_dir > mkdir directory > rmdir directory > ls Execute Write Write Read 17

המידע שהוצג כאן לגבי כל אחד מהפקודות חלקי ניתן בכל שלב להשתמש בפקודה man כדי לראות קובץ עזרה עבור פקודה מסוימת. > man <command name> ה- man של פקודה מכיל את צורת ההפעלה שלה, דגלים אפשריים ועוד. למשל: > man ls > man rm > man man בנוסף, מומלץ מאד לחפש את שם הפקודה בתוספת המילה Bash יענו על כל שאלותיכם. באינטרנט. לרוב התוצאות הראשונות 18

לכל תכנית יש ערוצי קלט וערוצי פלט לכל תכנית קיימים ב- UNIX 3 אלו הם הדרכים בהם היא מקבלת קלט ומציגה את הפלט שלה ערוצי ברירת מחדל: ערוץ הקלט הסטנדרטי: ממנו מקבלת התכנית את הקלט ברירת המחדל היא הפקודות המוכנסות בחלון הטרמינל ערוץ הפלט הסטנדרטי: אליו מודפס הפלט ברירת מחדל היא הדפסה לחלון הטרמינל ערוץ השגיאות הסטנדרטי: ערוץ פלט נוסף המשמש להדפסת הודעות שגיאה ברירת המחדל היא הדפסה לחלון הטרמינל ערוצי קלט/פלט נוספים יכולים להיות למשל קבצים, נתייחס למקרים אלו בהמשך הקורס 19

בעת קריאה לפקודה בטרמינל ניתן להפנות את ערוצי הקלט והפלט הסטנדרטיים לקבצים הפניית ערוץ הפלט הסטנדרטי נעשית באמצעות האופרטור ">": > command [arguments] > <output_file> :">" > command [arguments] < <input_file> הפניית ערוץ הקלט הסטנדרטי נעשית באמצעות האופרטור הפניית ערוץ השגיאות הסטנדרטי נעשית באמצעות האופרטור :"2>" > command [arguments] 2> <errors_file> אם ננסה לכתוב לתוך קובץ קיים, נדרוס את תוכן הקובץ הקיים. אם ברצוננו להוסיף את הפלט להמשכו של קובץ קיים ניתן להשתמש ב-"<<" או "<<2" )בהתאמה( 20

> command [arguments] < input > output ניתן להפנות מספר ערוצים בבת אחת הפניית הקלט והפלט יחדיו נעשית כך: כדי להפנות את ערוץ השגיאות ואת ערוץ הפלט ניתן לרשום: > command [arguments] > output 2> errors > command [arguments] 2>1 כדי להפנות את ערוץ השגיאות לערוץ הפלט יש לכתוב: כדי להדפיס את ערוץ הפלט וערוץ השגיאות לאותו הקובץ יש לכתוב: > command [arguments] > output 2>1 21

>cat > file.txt Hello world! >ls file.txt >cat file.txt Hello world! >cat file.txt > file2.txt >cat file2.txt Hello world! >cat file.txt >> file2.txt >cat file2.txt Hello world! Hello world! בעזרת הפניית קלט/פלט ניתן לעשות שימושים שונים בפקודה cat למשל: הכנסת קלט מהמקלדת 22

>cat < file2.txt > file.txt >cat file.txt Hello world! Hello world! >rmdir foo rmdir: `foo': No such file or directory >rmdir foo > output.txt rmdir: `foo': No such file or directory >rmdir foo 2> error.txt >cat error.txt rmdir: `foo': No such file or directory הודעת השגיאה נשלחת לערוץ השגיאות ולכן אינה מופנית לקובץ 23

הידור תכניות ב- t2 הרצת ודיבוג תכניות 24

נדגים כעת כיצד ניתן לכתוב תכנית על t2 ולהריצה לשם כך עלינו לעבור את השלבים הבאים: התחברות ל- t2 1. ראינו כבר כיצד ניתן לעשות זאת במספר דרכים כתיבת הקוד בעורך כלשהו 2. הידור הקוד בעזרת מהדר )compiler( 3. הרצת הקוד 4. 25

כדי לכתוב קוד נצטרך להשתמש בתכנית כלשהי לעריכת טקסט מספר עורכי טקסט המותקנים תכניות ללא מנשק גרפי: - ב- t2 : -nano פשוטה לשימוש, אבל לא נוחה לעריכת קוד בטווח הארוך vim emacs - - מכילה את כל התכונות שמשתמש צריך, אבל דורשת זמן הסתגלות ארוך יותר כבדה וגם דורשת קצת זמן הסתגלות אבל בעלת אפשרויות רבות למשתמשים מתקדמים תכניות בעלות מנשק גרפי: gvim nedit גרסה גרפית של vim - תכנית פשוטה לשימוש )דומה להתנהגות תוכנות דומות ב- Windows ( אך בעלת אפשרויות מתקדמות יותר emacs - אם מנשק גרפי זמין התוכנה תופעל עם מנשק גרפי.Notepad++ דרך נוספת המומלצת למשתמשי Windows היא לערוך את הקוד בעורך טקסטואלי מוכוון קוד כגון 26

כדי לקמפל את הקוד שכתבנו לשפת מכונה יש להשתמש בקומפיילר. בסביבת UNIX מותקן כקומפיילר ברירת מחדל הקומפיילר gcc GNU Compiler Collection > gcc <flags> <files> [-o <output file>] אופן השימוש: > gcc hello.c -o hello למשל על מנת לקמפל את הקוד בקובץ :hello.c אם אין שגיאות יווצר קובץ הרצה בשם המתאים אם קיימות שגיאות הן יודפסו למסך לערוץ השגיאות 27

אם הדגל o- אינו מוגדר הקומפיילר יבחר בשם קובץ הפלט a.out כברירת מחדל הדגל g- משמש להוספת מידע הנחוץ ל- debugger כשאתם מתכננים לדבג הקפידו להשתמש בדגל זה בעזרת דגל זה ה- debugger יכול להדפיס מידע מדויק על השורות בהן קורות השגיאות > gcc file1.c file2.c files3.c o my_prog > gcc *.c o my_prog ניתן לקמפל מספר קבצים בבת אחת: 28

במהלך הקורס נדרוש לקמפל את הקוד עם הדגלים הבאים: > gcc -std=c99 -Wall -Werror -pedantic-errors משמעות הדגלים: :-std=c99 קובע את הסטנדרט C99 המוסיף כמה תכונות חשובות לשפה :-Wall מציג את כל האזהרות האפשריות. אזהרות הן בעיות בקוד שאמנם ניתן להדר אך בדרך כלל מעידות על באגים :-Werror מתייחס לאזהרה כאל שגיאה אין הצדקה לקוד המתקמפל עם אזהרות ולכן הדרישה בקורס היא לקוד המתקמפל ללא אזהרות :-pedantic-errors מגביל את הקוד לסטנדרט הנבחר כך שדברים אשר המהדר יודע להתמודד איתם אך אינם חלק מהסטנדרט ייחשבו כשגיאות מומלץ להשתמש בדגלים אלו תמיד מאחר והם מקלים על העבודה ומשפרים את איכות הקוד )חובה במהלך הקורס( 29

לאחר הקומפילציה מתקבל קובץ הרצה כאמור, אין לקובץ סיומת מיוחדת gcc דואג בצורה אוטומטית להוסיף הרשאות ריצה לקובץ >./hello Hello World! בשביל להריץ את הקובץ עלינו לרשום את שמו כשם הפקודה להרצה להרצת פקודה בספריה הנוכחית יש להוסיף /. לפי שם הקובץ בהמשך נראה כיצד ניתן לאפשר לקובץ לרוץ ללא הוספת /. 30