דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. יצירת שירות שלא ניתן לעצירה בלינוקס

יצירת שירות שלא ניתן לעצירה בלינוקס

מתוזמן נעוץ נעול הועבר תכנות
17 פוסטים 6 כותבים 218 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • nigunN מנותק
    nigunN מנותק
    nigun
    השיב לclickone ב נערך לאחרונה על ידי
    #6

    @clickone
    נתת לי רעיון חדש
    שיעזור למי גם למי שמכיר את לינוקס ישר והפוך (אולי זה פתרון לנטפרי)
    וזה פשוט למוצא תוכנה כמו CRON שרצה במילא על כל מחשב לינוקס
    ואם יש אותו בקוד פתוח פשוט להוסיף לתוכנה שורה שבודקת כל X דקות האם השירות הראשי פעיל ואם לא אז מפעיל שוב/מתקין
    ואז לקמפל אותה (אפשר לעשות את התהליך הזה על שרת ואז לתוכנה תוריד אותה)
    ולהחליף את התוכנה המזויפת עם התוכנה הישנה ואז גם ללקוח הכי מתוכם אין אפשרות לדעת מי שחדש את הפעולה כל הזמן
    הבעיה היא שמידי פעם יש עדכוני תוכנה שפשוט ידרסו את התוכנה המזוייפת
    בשביל זה אפשר אולי להריץ סקריפט בשירות הראשי שבודק כל הזמן האם יש עדכון לתוכנה הזאת
    ואם כן, היא יוצרת עותק חדש של הגירסה האחרונה ומעדכנת בלי לשאול את הלקוח
    החסרון בזה הוא שלא תמיד הלקוח רוצה עדכון והוא לא יבין מי עדכן את זה לבד (אבל ברוב המשתמשים זה לא רלוונטי)
    אפשרות שניה היא להגדיר איכשהו שAPT ידלג על הבדיקה של התוכנה הזה והיא לעולם לא תתעדכן

    מייל: nigun@duck.com

    yossizY תגובה 1 תגובה אחרונה
    0
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב לnigun ב נערך לאחרונה על ידי
      #7

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

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      nigunN תגובה 1 תגובה אחרונה
      4
      • nigunN מנותק
        nigunN מנותק
        nigun
        השיב לyossiz ב נערך לאחרונה על ידי
        #8

        @yossiz
        את האמת לא הבנתי כל כך איך אפשר לשנות דברים בקרנל אז לכן הלכתי על כל מיני כיוונים הזויים
        האם יש לך כיוון לתת לי להבין איך עובד מודול קרנל?

        מייל: nigun@duck.com

        yossizY תגובה 1 תגובה אחרונה
        0
        • yossizY מנותק
          yossizY מנותק
          yossiz
          השיב לnigun ב נערך לאחרונה על ידי yossiz
          #9

          @nigun לא משנים דברים בקרנל, מודול קרנל זה ספרייה שנטענת על ידי הקרנל ומשתמשת ב-API של הקרנל להוסיף יכולות או התנהגויות שונות לקרנל.
          דרייברים הם סוג של מודול קרנל, שמוסיפים יכולות לקרנל לתקשר מול התקנים שונים
          ווייפרי הוא "מודול קרנל" בווינדוס שמשתשמת ב-API של הקרנל שמיועד עבור סינון תעבורה, (וגם הגנת הרכיבים הנחוצים ממחיקה)
          מן הסתם יש משהו מקביל בלינוקס.
          לעניינך אתה רוצה להשתמש ב-API של הקרנל עבור דבר אחד ויחיד - מניעת הריגת תהליך. כל השאר אין צורך ולא מומלץ לעשות בתוך הקרנל, תעשה ב-userland (מרחב ה-user לעומת מרחב הקרנל).
          פה יש תחילת מהלך.
          אבל שים לב לכמה דברים:

          • מודול קרנל צריך לכתוב ב-C.
          • גם אם אתה מכיר את שפת C, יש קשיים והגבלות מיוחדים בתכנות קרנל שלא קיימים ב-userland
          • שגיאה בקוד של המודול יגרום ל-kernel panic (המקביל של מסך כחול בלינוקס)
          • בד"כ צריך להתאים אותו לגירסת הקרנל, (ה-API שפנימי של הקרנל לא יציב ומשתנה כל הזמן), אם זה לא מתקבל כחלק מהקוד של הקרנל, תצטרך לשדרג אותו בכל שחרור חדש של הקרנל או לחילופין לא לשדרג את גירסת הקרנל שלך.

          (סוף דבר, תשקול פתרון לא טכנולוגי...)

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          nigunN תגובה 1 תגובה אחרונה
          5
          • yossizY מנותק
            yossizY מנותק
            yossiz
            כתב ב נערך לאחרונה על ידי
            #10

            @nigun כנראה אפשר להגדיר תהליך כ"בלתי הריג" על ידי Apparmor.

            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

            תגובה 1 תגובה אחרונה
            3
            • yossizY מנותק
              yossizY מנותק
              yossiz
              כתב ב נערך לאחרונה על ידי
              #11

              @nigun עוד מידע טוב, https://unix.stackexchange.com/a/484452

              נ.ב. בסוף היום, מי שעשה את החסימה תמיד ידע איך להוריד אותו, אין מנוס מזה.

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              3
              • dovidD מחובר
                dovidD מחובר
                dovid ניהול
                כתב ב נערך לאחרונה על ידי dovid
                #12

                המשפט הזה

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

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

                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                nigunN תגובה 1 תגובה אחרונה
                3
                • nigunN מנותק
                  nigunN מנותק
                  nigun
                  השיב לdovid ב נערך לאחרונה על ידי
                  #13

                  @dovid אמר ביצירת שירות שלא ניתן לעצירה בלינוקס:

                  המשפט הזה

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

                  בכלל לא נכון. נטפרי לא עובדים על זה בינתיים בכלל,

                  התכוונתי שמתכננים לבנות, כי זה מופיע ברשימת דברים לפיתוח בנטפרי.

                  מייל: nigun@duck.com

                  תגובה 1 תגובה אחרונה
                  0
                  • nigunN מנותק
                    nigunN מנותק
                    nigun
                    השיב לyossiz ב נערך לאחרונה על ידי
                    #14

                    @yossiz אמר ביצירת שירות שלא ניתן לעצירה בלינוקס:

                    מודול קרנל צריך לכתוב ב-C.

                    זה נראה מכאן שאפשר לבנות גם בrust
                    או שזה משהו אחר בכלל?

                    מייל: nigun@duck.com

                    yossizY תגובה 1 תגובה אחרונה
                    1
                    • yossizY מנותק
                      yossizY מנותק
                      yossiz
                      השיב לnigun ב נערך לאחרונה על ידי
                      #15

                      @nigun צודק. צריך לבדוק אם זה מספיק יציב.

                      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                      nigunN תגובה 1 תגובה אחרונה
                      0
                      • nigunN מנותק
                        nigunN מנותק
                        nigun
                        השיב לyossiz ב נערך לאחרונה על ידי
                        #16

                        @yossiz
                        מצאתי דיון גם האם ניתן לבנות עם GO ?
                        אבל לא הבנתי מה המסקנה
                        בנתיים שלחתי את הסרטון לבדיקה אולי שם נמצאים כל ההסברים

                        מייל: nigun@duck.com

                        yossizY תגובה 1 תגובה אחרונה
                        0
                        • yossizY מנותק
                          yossizY מנותק
                          yossiz
                          השיב לnigun ב נערך לאחרונה על ידי
                          #17

                          @nigun הדיון שם על כתיבת קרנל שלם ב-GO. לכתוב מודול עבור קרנל לינוקס נראה לי שכולי עלמא מודים שאי אפשר, כי תוכנות GO חייבים את ה-runtime של GO, וב-runtime של GO יש יותר מדי דברים שתלויים על ההנחה שהקוד רצה ב-userspace.

                          כתבתי מסברא, יכול להיות שאני טועה, או שיש runtime חילופי ל-GO שירוץ בתוך הקרנל, או שאפשר לכתוב אחד כזה.

                          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                          תגובה 1 תגובה אחרונה
                          1

                          בא תתחבר לדף היומי!
                          • התחברות

                          • אין לך חשבון עדיין? הרשמה

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