PDAce   PDAce   PDAce
 
סקירות ומדריכים
חפש
 
דף הבית
סקירות ומדריכים
השוואת מכשירים
מילון מונחים
תוכנות מומלצות
קישורים לאתרים נבחרים
הוראות שימוש באתר
מי אנחנו
טאגליינס
 
החיים מבעד ל-PDA
PDAce - Stories הטוב, הרע וצבי צב
או - כך התקנו WM2005 על אחד IPAQ 4700

 
 
טאגליינס

ניהול תוכנות על מחשבי פאלם

 
מאת: אודי פינקלשטיין
כיצד מנהלת מערכת ההפעלה PalmOS את התוכנות המותקנות ע"ג הפאלם
כל מי שעובד על מחשב PC מכיר את התלאות הכרוכות בניהול תוכנות על גבי המחשב.
  • תוכנות שמותקנות לנסיון אך לא ניתן להסירן בצורה מלאה
  • אזור ה- registry שהולך ומתמלא
  • מערכת ההפעלה שהולכת ותופחת עם עוד ועוד קבצים ככל שעובר יותר זמן
  • זמן העלאת המערכת שהולך ומתארך
בעיות אלו גרמו לצורך הנפוץ להתקין מחדש את מערכת ה- Windows כל חצי שנה עד שנה על מנת לקבל מערכת נקייה מ-"זבל" המצטבר בה בשימוש שוטף.

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

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

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

מערך הזכרון בפאלם

מחשבי הפאלם משלבים מספר זכרונות שונים באופיים.

זכרון פנימי

זכרון זה מכיל רשימה "שטוחה" של קבצים (ללא subdirectories), ונמצא בזכרון הראשי של הפאלם שלנו. כאשר אנו מריצים תוכנות, הן לא צריכות "להיטען" מהדיסק לזכרון, מכיון שהן כבר בזכרון. בזכרון זה נמצא שני סוגי קבצים:
  • קבצי PRC שהן המקבילה הפאלמית לקבצי ה- EXE, כלומר תוכניות להרצה. חלק מהתוכנות כוללות יותר מקובץ PRC יחיד, וישנם קבצי PRC המשמשים יותר מתוכנה אחת, כמו קבצי DLL בעולם ה-PC.
  • קבצי PDB שהם למעשה בסיסי נתונים בתוך הזכרון. קובץ ה- PDB בנוי מרשומות באורך קבוע וכל תוכנה יכולה להגדיר קבצי PDB משלה.

לכל קובץ ישנו קוד זיהוי של 4 אותיות הנקרא CreatorID המזהה את התוכנה אליה הוא שייך. המוסכמה בעולם הפאלם קובעת קבצי מערכת מכילים קוד זיהור הבנוי מאותיות קטנות, ואילו קודי זיהוי של תוכנות צד ג' חייבות להכיל לפחות אות גדולה (uppercase) אחת.
במכשירי הפאלם הקלאסיים הזכרון הראשי היה זכרון RAM שנמחק ללא אספקת מתח, ולכן אם אוחסן הפאלם למשך תקופה ארוכה במגירה, הזכרון היה נמחק כולו.
במכשירי הפאלם החדשים ממומשת מערכת קבצים חדשה בשם NVFS. מערכת זו משתמשת בזכרון FLASH המגבה אוטומטית את זכרון ה-RAM. היתרון בכך הוא שבניגוד למחשבי הפאלם הישנים, התרוקנות הסוללה לא גורמת לאיבוד כל המידע שבו. החסרון הוא בעיית תאימות לחלק מהתוכנות הקיימות, וזמן תגובה איטי במקצת יחסית לפאלמים ללא NVFS.
המכשירים (נכון להיום) המשתמשים ב- NVFS הם ה- TE2, T5, TX, Treo 650, LifeDrive, Z22.

זכרון העדפות

זכרון ההעדפות (preferences) משמש לאחסון הגדרות של תוכנות שונות המותקנות בפאלם. זכרון זה מתחלק לשתיים:
  • Saved preferences
  • Unsaved Preferences

ההבדל בין הזכרונות הללו הוא שה- saved preferences נשמרים על מחשב ה-PC בזמן סינכרון בעוד שה- unsaved preferences נשמרים רק בפאלם ואינם עוברים סנכרון.
זכרונות אלו ממומשים על ידי שני קבצי PDB בזכרון הנקראים (כמה מפתיע) saved preferences ו-unsaved preferences. שני קבצים אלו מאחסנים את ההגדרות של כל התוכנות המותקנות בפאלם.
כאשר תוכנה רוצה לשמור הגדרות היא תשמור אותם באחד משני הזכרונות הנ"ל. ההגדרות יזוהו לפי קוד הזיהוי של התוכנה שיצרה אותם.
בניגוד ל-PC בו הגדרות ב- registry נוצרות בזמן התקנת התוכנה, וחסרונם עלול ליצור בעיות בהפעלתה, מקובל בעולם הפאלם שהגדרות preferences נוצרות בפעם הראשונה בזמן ריצת התוכנה, וחסרונן אינו מהווה בעיה (הם פשוט ייוצרו מחדש).
מחיקת תוכנה בפאלם תמחוק את קובץ ה- PRC המדובר ואת כל הגדרות ה- preferences המכילות אותו קוד זיהוי כמו אותו קובץ ה-PRC שנמחק.

קבצים חיצוניים

מערכת PalmOS 4.x הביאה בפעם הראשונה את מושג כרטיסי ההרחבה לעולם הפאלם. מעתה תוכנות פאלם יכולות לגשת לא רק לזכרון הפנימי אלא גם לקבצים על כרטיסי זכרון חיצוניים. תוכנות פאלם שמבקשות לגשת לקבצים אלו חייבות להשתמש בפונקציות מערכת שונות מאלו המשמשות לגישה לזכרונות הפנימיים. לכרטיסים החיצוניים קיימת מערכת קבצים מפותחת כולל subdirectories. הכרטיסים מפורמטים תחת FAT או FAT32 כמו כל כרטיסי ההרחבה הנמצאים במצלמות, דבר המקל על החלפת קבצים עם מחשבי PC.
בנוסף, מעכשיו ניתן היה גם לאחסן קבצי PRC על כרטיס ההרחבה. קבצים מסוג זה, ששכנו במקום קבוע בכרטיס (במחיצת \Palm\Launcher) זוהו אוטומטית על ידי הפאלם, וניתן היה להריצם ישירות מהכרטיס. דבר זה התבצע בעצם על ידי העתקתם הזמנית לזכרון הראשי. עם סיום הריצה, הקבצים פשוט נמחקו מהזכרון. קבצי נתונים נאלצו עדיין להשאר בזכרון הראשי, אלא אם כן האפליקציה תוכננה מראש לחפש אותם בכרטיס ההרחבה (טכניקה נפוצה במיוחד בתוכנות נווט, שם קבצי המפות תופסים נפח רב).

העניינים מסתבכים...

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

שליטה על התוכנות המותקנות

היינו רוצים לפתח תהליך שבו נוכל להתקין תוכנה חדשה על הפאלם, ולזהות בוודאות את כל השפעותיה על המחשב:
  • קבצים חדשים בזכרון
  • הגדרות preferences חדשות
נרצה גם את היכולת לבטל התקנה של תוכנה מסוימת, (הסרה של כל הקבצים וההגדרות השייכות לה). קיימות מספר דרכים לבצע זאת.
  1. שימוש בתוכנות ייעודיות כמו Cleanup ו- Uninstall Manager של חברת NorthGlide
  2. שימוש בכלים קיימים כדי לזהות ידנית את השינויים שביצעה התוכנה בזכרון הפאלם (הוספת קבצים והגדרות).

Cleanup

Cleanup היא תוכנה מסחרית של חברת NorthGlide ומשמשת להסרת תוכנות קיימות המותקנות בפאלם. הכוונה היא שניתן להתקין Cleanup על פאלם עמוס בתוכנות, ללא הכנה מוקדמת. Cleanup מכילה מאגר נתונים על מספר רב של תוכנות פאלם ועל הקבצים וההגדרות השייכות להן.
לאחר הרצת Cleanup התוכנה מציגה רשימה של כל ההגדרות והקבצים בפאלם, לפי החלוקה הבאה:
  • הגדרות או קבצי נתונים שה- ID שלהם תואם לתוכנה הנמצאת בזכרון הפאלם. זהו בעצם המצב "הנורמלי" והרצוי. רוב ההגדרות והנתונים שנמצא בפאלם יפלו תחת קטגוריה זו. מכיון שהגדרות וקבצים אלו אינם מהווים בעיה (וימחקו אוטומטית אם נמחק את האפליקציה אליה הם שייכים), Cleanup אינה מציגה רשימה זו כברירת מחדל.
  • הגדרות וקבצי נתונים "יתומים", המופיעים במאגר של Cleanup. לגבי אלו ניתן לקבל פרטים מתוך מאגר הידע של Cleanup לאיזה תוכנה הם שייכים.
  • הגדרות וקבצי נתונים "יתומים", המנוהלים על ידי תוכנת Uninstall Manager. (ראו בהמשך).
  • הגדרות וקבצי נתונים "יתומים", לא מוכרים. הגדרות אלו לרוב הן הבעייתיות ושייכות לתוכנות שהתקנו בעבר והסרנו באופן חלקי. התוכנה יכולה גם לסרוק את כרטיס הזכרון, ולחפש עליו את התוכנה המתאימה להגדרות אלה (לפי קוד הזיהוי שלהן).
לאחר שראינו את רשימת ההגדרות ורשימת הקבצים, ניתן למחוק, אם רוצים, הגדרות או קבצי נתונים אלה (כולל אופציה לשמירת גיבוי, למקרה שמחקנו בטעות הגדרה שבכל זאת רצימו לשמור).

Uninstall Manager

תוכנה זו היא "בת הזוג" של Cleanup שהזכרנו קודם. בניגוד ל- Cleanup שמאפשרת ניקוי פאלם קיים, Uninstall Manager (להלן UM) נועדה להתקנה על פאלם נקי לחלוטין, מכיון שביכולתה לנהל התקנה והסרה רק של תוכנות שהותקנו לאחר התקנת UM.
לאחר התקנת UM, כל אפליקציה שמותקנת תחת HotSync נמצאת "במעקב" ו-UM "לומדת" איזה קבצי נתונים והגדרות היא יוצרת בפאלם, כולל הגדרות וקבצי נתונים עם ID שונה מזה של התוכנה.
במסך הראשי של התוכנה נוכל לראות את רשימת האפליקציות ש-UM מנהלת, ולכל אפליקציה נוכל לראות את רשימת הקבצים וההגדרות השייכות לה.
בנוסף למצב העבודה הרגיל, תוללת UM מספר שיטות נוספות לנהל התקנה והסרה של תוכנות חדשות:

Sandbox

במצב Sandbox נוכל לזהות התקנה של אפליקציה בודדת. נבצע סינכרון של אפליקציה אחת בכל פעם. לאחר הסינכרון יפתח מסך של UM שמאפשר:
  • להריץ את התוכנה המותקנת.
  • לשמור אותה ב- sandbox שהינו קובץ המכיל את התוכנה וכל קבצי העזר וההגדרות שהיא יצרה.
  • לצאת מה- sandbox ולהתקין את התוכנה באופן רגיל.
יש לשים לב לשתי ההגבלות של מצב עבודה זה:
  1. יש להתקין תוכנה אחת בכל פעם, על מנת ש- UM תדע לזהות את הקבצים השייכים לה
  2. התוכנה המותקנת חייבת להיות חדשה במכשיר, לא עדכון לתוכנה שכבר מותקנת.
לאחר שאפליקציה נשמרת ב- sandbox ניתן להריצה רק דרך UM, אך עם עזיבת האפליקציה כל השינויים שהיא יצרה בפאלם יכתבו חזרה ל- sandbox ולא ישאירו זכר בזכרון הפאלם.

Recording Mode

החסרון של ה- sandbox התבטא בכך שההפעלה שלו מחיבת העברה של התוכנה החדשה דרך HotSync. מצב ה-Recording Mode מאפשר לבצע "הקלטה" של התנהגות הפאלם. ההקלטה מתחילה עם בחירת האופציה המתאימה ב- UM, ומסתיימת עם לחיצה על מקש חומרה כלשהו בפאלם. לאחר סיום ההקלטה נקבל רשימה של כל הקבצים שהשתנו בפאלם. במצב זה נוכל לבחור בין לבטל את כל השינויים שנעשו בפאלם מאז תחילת ההקלטה, או לקבל אותם. באופן זה ניתן לבדוק את ההשפעות של תוכנה שאנו רוצים לנסות מתוך כרטיס ההרחבה, ולא העברנו דרך HotSync. יש לשים לב לשתי ההגבלות של מצב עבודה זה:
  1. לא ניתן לשמור את תוצאת ההקלטה בקובץ מבודד כמו ב- sandbox.
  2. עם ביטול ההקלטה, יוחזרו כל ההגדרות המקוריות, כפי שהיו לפני תחילת ה- recording.

שליטה ידנית על התוכנות המותקנות

קיימות שיטות לבצע שליטה ידנית על התוכנות המותקנות. השיטות מסורבלות בהרבה מאשר כלי תוכנה מוכנים, אבל הן אפשריות. הרעיון הוא לבדוק את רשימת הקבצים וההגדרות לפני ואחרי ההתקנה. רעיונות לדוגמא:
  1. שימוש בפונקציית diff בתוכנת Resco Backup על מנת לקבל רשימת קבצים שונים בין הגיבוי האחרון לבין המצב הנוכחי בפאלם.
  2. שימוש בתוכנת Resco Explorer או FileZ על מנת לראות את ה- preferences. ניתן לשמור את שתי הרשימות (לפני ואחרי ההתקנה) ל- Memo, לסנכרן ל-PC (שם הן מומרות לקבצי טקסט) ולהשתמש בכלי diff כמו http://winmerge.sourceforge.net להשוואת קבצי טקסט על ה-PC כדי למצוא מה ההבדלים.
 
19-Jan-2005