add new function - lsmod
This function input list loaded drivers. git-svn-id: svn://kolibrios.org@9780 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -76,6 +76,7 @@ void get_file_dir_loc(char *filepath, char *dir_path);
|
|||||||
#include "cmd/cmd_ver.c"
|
#include "cmd/cmd_ver.c"
|
||||||
#include "cmd/cmd_pwd.c"
|
#include "cmd/cmd_pwd.c"
|
||||||
#include "cmd/cmd_ls.c"
|
#include "cmd/cmd_ls.c"
|
||||||
|
#include "cmd/cmd_lsmod.c"
|
||||||
#include "cmd/cmd_ps.c"
|
#include "cmd/cmd_ps.c"
|
||||||
#include "cmd/cmd_kill.c"
|
#include "cmd/cmd_kill.c"
|
||||||
#include "cmd/cmd_pkill.c"
|
#include "cmd/cmd_pkill.c"
|
||||||
|
33
programs/system/shell/cmd/cmd_lsmod.c
Normal file
33
programs/system/shell/cmd/cmd_lsmod.c
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
struct service_str{
|
||||||
|
char name[16];
|
||||||
|
struct service_str* fd;
|
||||||
|
struct service_str* bk;
|
||||||
|
uint32_t base; // base addreass service for kernel_free
|
||||||
|
uint32_t entry; //unsigned drvEntry(int action, char *cmdline)
|
||||||
|
uint32_t srv_proc; // static int __stdcall service_proc(ioctl_t *my_ctl)
|
||||||
|
//void* srv_proc_kern;
|
||||||
|
};
|
||||||
|
|
||||||
|
int cmd_lsmod(char param[]) {
|
||||||
|
struct service_str* fd;
|
||||||
|
struct service_str* bk;
|
||||||
|
struct service_str srv_str;
|
||||||
|
asm_inline(
|
||||||
|
"int $0x40"
|
||||||
|
:"=b"(fd), "=c"(bk)
|
||||||
|
:"a"(68), "b"(31), "c"(1)
|
||||||
|
);
|
||||||
|
srv_str.fd = fd;
|
||||||
|
printf("%-*s Hendler Service_proc\n\r", 16, " Name");
|
||||||
|
while (1) {
|
||||||
|
asm_inline(
|
||||||
|
"int $0x40"
|
||||||
|
::"a"(68), "b"(31), "c"(2), "d"(fd), "D"(&srv_str)
|
||||||
|
);
|
||||||
|
printf("%-*s 0x%X 0x%X \n", 16, srv_str.name, fd, srv_str.srv_proc);
|
||||||
|
if (fd == bk) break;
|
||||||
|
fd = srv_str.fd;
|
||||||
|
};
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
@@ -54,6 +54,7 @@ int cmd_help(char cmd[]);
|
|||||||
int cmd_kill(char process[]);
|
int cmd_kill(char process[]);
|
||||||
int cmd_pkill(char process_name[]);
|
int cmd_pkill(char process_name[]);
|
||||||
int cmd_ls(char dir[]);
|
int cmd_ls(char dir[]);
|
||||||
|
int cmd_lsmod(char param[]);
|
||||||
int cmd_mkdir(char dir[]);
|
int cmd_mkdir(char dir[]);
|
||||||
int cmd_more(char file[]);
|
int cmd_more(char file[]);
|
||||||
int cmd_ps(char arg[]);
|
int cmd_ps(char arg[]);
|
||||||
|
@@ -18,6 +18,7 @@ const command_t COMMANDS[]=
|
|||||||
{"kill", " Stops a running process. Usage:\n\r kill <PID of process>\n\r kill all\n\r", &cmd_kill},
|
{"kill", " Stops a running process. Usage:\n\r kill <PID of process>\n\r kill all\n\r", &cmd_kill},
|
||||||
{"pkill", " Kills all processes by name. Usage:\n\r pkill <process_name>\n\r", &cmd_pkill},
|
{"pkill", " Kills all processes by name. Usage:\n\r pkill <process_name>\n\r", &cmd_pkill},
|
||||||
{"ls", " Lists the files in a directory. Usage:\n\r ls ;lists the files in current directory\n\r ls <directory> ;lists the files at specified folder\n\r ls -1 ;lists the files in a single column\n\r", &cmd_ls},
|
{"ls", " Lists the files in a directory. Usage:\n\r ls ;lists the files in current directory\n\r ls <directory> ;lists the files at specified folder\n\r ls -1 ;lists the files in a single column\n\r", &cmd_ls},
|
||||||
|
{"lsmod", " list working driver \n\r", &cmd_lsmod},
|
||||||
{"mkdir", " Create directory and parent directories as needed. Usage:\n\r mkdir <folder/name>\n\r", &cmd_mkdir},
|
{"mkdir", " Create directory and parent directories as needed. Usage:\n\r mkdir <folder/name>\n\r", &cmd_mkdir},
|
||||||
{"more", " Displays a file data to the screen. Usage:\n\r more <file name>\n\r", &cmd_more},
|
{"more", " Displays a file data to the screen. Usage:\n\r more <file name>\n\r", &cmd_more},
|
||||||
{"ps", " Lists the current processes running\n\r or shows more info on <procname> and save LASTPID\n\r", &cmd_ps},
|
{"ps", " Lists the current processes running\n\r or shows more info on <procname> and save LASTPID\n\r", &cmd_ps},
|
||||||
|
@@ -19,7 +19,8 @@ const command_t COMMANDS[]=
|
|||||||
{"kill", " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r kill <PID <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>\n\r kill all\n\r", &cmd_kill},
|
{"kill", " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r kill <PID <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>\n\r kill all\n\r", &cmd_kill},
|
||||||
{"pkill", " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r pkill <<3C><><EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>\n\r", &cmd_pkill},
|
{"pkill", " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r pkill <<3C><><EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>\n\r", &cmd_pkill},
|
||||||
{"ls", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᯨ᮪ 䠩<><E4A0A9><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r ls ;ᯨ᮪ 䠩<><E4A0A9><EFBFBD> <20> ⥪<>饬 <20><>⠫<EFBFBD><E2A0AB><EFBFBD>\n\r ls <<3C><>४<EFBFBD><E0A5AA><EFBFBD><EFBFBD><EFBFBD>> ;ᯨ᮪ 䠩<><E4A0A9><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>४<EFBFBD><E0A5AA>ਨ\n\r", &cmd_ls},
|
{"ls", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᯨ᮪ 䠩<><E4A0A9><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r ls ;ᯨ᮪ 䠩<><E4A0A9><EFBFBD> <20> ⥪<>饬 <20><>⠫<EFBFBD><E2A0AB><EFBFBD>\n\r ls <<3C><>४<EFBFBD><E0A5AA><EFBFBD><EFBFBD><EFBFBD>> ;ᯨ᮪ 䠩<><E4A0A9><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>४<EFBFBD><E0A5AA>ਨ\n\r", &cmd_ls},
|
||||||
{"mkdir", " <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⠫<EFBFBD><E2A0AB> <20> த<>⥫<EFBFBD>᪨<EFBFBD> <20><>⠫<EFBFBD><E2A0AB><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>室<EFBFBD><E5AEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r mkdir <<3C><><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>>", &cmd_mkdir},
|
{"lsmod", " list working driver \n\r", &cmd_lsmod},
|
||||||
|
{"mkdir", " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>⠫<EFBFBD><E2A0AB> <20> த<>⥫<EFBFBD>᪨<EFBFBD> <20><>⠫<EFBFBD><E2A0AB><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>室<EFBFBD><E5AEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r mkdir <<3C><><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>>", &cmd_mkdir},
|
||||||
{"more", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD> 䠩<><E4A0A9> <20><> <20><>࠭. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r more <<3C><><EFBFBD> 䠩<><E4A0A9>>\n\r", &cmd_more},
|
{"more", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD> 䠩<><E4A0A9> <20><> <20><>࠭. <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD>:\n\r more <<3C><><EFBFBD> 䠩<><E4A0A9>>\n\r", &cmd_more},
|
||||||
{"ps", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᯨ᮪ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ\n\r <20> 㪠<><E3AAA0><EFBFBD><EFBFBD> <<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>, <20><><EFBFBD><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>࠭<EFBFBD><E0A0AD><EFBFBD> LASTPID\n\r", &cmd_ps},
|
{"ps", " <20>뢮<EFBFBD><EBA2AE><EFBFBD> ᯨ᮪ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᮢ\n\r <20> 㪠<><E3AAA0><EFBFBD><EFBFBD> <<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>, <20><><EFBFBD><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>࠭<EFBFBD><E0A0AD><EFBFBD> LASTPID\n\r", &cmd_ps},
|
||||||
{"pwd", " <20><><EFBFBD><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD> ⥪<>饩 <20><>४<EFBFBD><E0A5AA>ਨ\n\r", &cmd_pwd},
|
{"pwd", " <20><><EFBFBD><EFBFBD><EFBFBD>뢠<EFBFBD><EBA2A0> <20><><EFBFBD> ⥪<>饩 <20><>४<EFBFBD><E0A5AA>ਨ\n\r", &cmd_pwd},
|
||||||
|
Reference in New Issue
Block a user