KernelModuleUtils

public class KernelModuleUtils
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.KernelModuleUtils


סיכום

‫constructors ציבוריים

KernelModuleUtils()

‫methods ציבוריים

static String[] getDependentModules(String modName, String lsmodOutput)

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

static String getDisplayedModuleName(String fullPath)

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

static CommandResult installModule(ITestDevice device, String modulePath, String arg, long timeoutMs)

התקנת מודול ליבה במכשיר הנתון.

static String removeKoExtension(String s)

מסירים את התוסף ‎.ko אם הוא קיים

static CommandResult removeModuleWithDependency(ITestDevice device, String moduleName)

הסרה של מודול ליבה ומודולים תלויים מהמכשיר הנתון.

static CommandResult removeSingleModule(ITestDevice device, String moduleName)

הסרת מודול ליבה מהמכשיר הנתון.

‫constructors ציבוריים

KernelModuleUtils

public KernelModuleUtils ()

‫methods ציבוריים

getDependentModules

public static String[] getDependentModules (String modName, 
                String lsmodOutput)

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

לדוגמה, אם המודול שצוין הוא `kunit`, והפלט של `lsmod` הוא:

$ lsmod
 Module        Size    Used by
 kunit_test    663552  0
 time_test     663558  0
 kunit         57344   15 kunit_test,time_test
 
במקרה כזה, הפונקציה תחזיר מערך שמכיל את הערכים `kunit_test` ו-`time_test`.

פרמטרים
modName String

lsmodOutput String

החזרות
String[]

getDisplayedModuleName

public static String getDisplayedModuleName (String fullPath)

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

לדוגמה, אפשר לראות את ההבדל בין שם הקובץ לבין השם שמוחזר על ידי הפקודה `lsmod`:

$ insmod kunit.ko
 $ lsmod | grep kunit
 kunit 20480 0
 

פרמטרים
fullPath String

החזרות
String

installModule

public static CommandResult installModule (ITestDevice device, 
                String modulePath, 
                String arg, 
                long timeoutMs)

התקנה של מודול ליבת המערכת במכשיר הנתון.

פרמטרים
device ITestDevice: המכשיר שבו רוצים להתקין את המודול

modulePath String: הנתיב למודול שרוצים להתקין

arg String: הארגומנט להעברה לפקודת ההתקנה

timeoutMs long: פסק הזמן באלפיות השנייה

החזרות
CommandResult

הקפצת הודעות שגיאה (throw)
DeviceNotAvailableException אם המכשיר לא זמין
TargetSetupError אם אי אפשר להתקין את המודול

removeKoExtension

public static String removeKoExtension (String s)

מסירים את התוסף ‎.ko אם הוא קיים

פרמטרים
s String

החזרות
String

removeModuleWithDependency

public static CommandResult removeModuleWithDependency (ITestDevice device, 
                String moduleName)

הסרה של מודול ליבה ומודולים תלויים מהמכשיר הנתון.

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

פרמטרים
device ITestDevice: המכשיר שממנו רוצים להסיר את המודול

moduleName String: השם של המודול שרוצים להסיר

החזרות
CommandResult

הקפצת הודעות שגיאה (throw)
DeviceNotAvailableException אם המכשיר לא זמין

removeSingleModule

public static CommandResult removeSingleModule (ITestDevice device, 
                String moduleName)

הסרת מודול ליבה מהמכשיר הנתון.

בשיטה הזו המערכת מנסה להסיר את מודול ליבת היעד מהמכשיר. לא יוסרו מודולים תלויים.

פרמטרים
device ITestDevice: המכשיר שממנו רוצים להסיר את המודול

moduleName String: השם של המודול שרוצים להסיר

החזרות
CommandResult

הקפצת הודעות שגיאה (throw)
DeviceNotAvailableException אם המכשיר לא זמין