更新shell
This commit is contained in:
parent
199d3a865c
commit
124a51354d
@ -103,6 +103,7 @@ void vbe_writestring(const char *data);
|
|||||||
void vbe_scroll();
|
void vbe_scroll();
|
||||||
int cur_task();
|
int cur_task();
|
||||||
void vbe_draw_char(char c,int32_t x,int32_t y);
|
void vbe_draw_char(char c,int32_t x,int32_t y);
|
||||||
|
void draw_rect(int x0, int y0, int x1, int y1, int c);
|
||||||
void initVBE(multiboot_t *multiboot);
|
void initVBE(multiboot_t *multiboot);
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,4 +58,6 @@ void wait_task(struct task_struct *task);
|
|||||||
|
|
||||||
void start_task(struct task_struct *task);
|
void start_task(struct task_struct *task);
|
||||||
|
|
||||||
|
int get_procs();
|
||||||
|
|
||||||
#endif //CRASHPOWEROS_TASK_H
|
#endif //CRASHPOWEROS_TASK_H
|
||||||
|
@ -64,6 +64,12 @@ void print_proc_t(int *i,struct task_struct *base,struct task_struct *cur,int is
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int get_procs(){
|
||||||
|
int index = 0;
|
||||||
|
print_proc_t(&index,current,current->next,0);
|
||||||
|
return index;
|
||||||
|
}
|
||||||
|
|
||||||
void print_proc(){
|
void print_proc(){
|
||||||
int index = 0;
|
int index = 0;
|
||||||
print_proc_t(&index,current,current->next,1);
|
print_proc_t(&index,current,current->next,1);
|
||||||
|
@ -286,8 +286,25 @@ char *user() {
|
|||||||
void setup_shell() {
|
void setup_shell() {
|
||||||
char *user1 = "default";//user();
|
char *user1 = "default";//user();
|
||||||
screen_clear();
|
screen_clear();
|
||||||
printf("%s for x86 [Version %s] \n", OS_NAME, OS_VERSION);
|
|
||||||
printf("Copyright 2024 XIAOYI12 (Build by GCC i686-elf-tools)\n");
|
printf("Welcome to %s %s (CPOS Kernel x86_64)\n"
|
||||||
|
"\n"
|
||||||
|
" * SourceCode: https://github.com/xiaoyi1212/CoolPotOS\n"
|
||||||
|
" * Website: https://github.com/plos-clan\n"
|
||||||
|
"\n"
|
||||||
|
" System information as of %s \n"
|
||||||
|
"\n"
|
||||||
|
" Processes: %d\n"
|
||||||
|
" Users logged in: %s\n"
|
||||||
|
" Memory usage: %d B \n"
|
||||||
|
"\n"
|
||||||
|
"Copyright 2024 XIAOYI12 (Build by GCC i686-elf-tools)\n"
|
||||||
|
,OS_NAME
|
||||||
|
,OS_VERSION
|
||||||
|
,get_date_time()
|
||||||
|
,get_procs()
|
||||||
|
,user1
|
||||||
|
,memory_usage());
|
||||||
|
|
||||||
char com[MAX_COMMAND_LEN];
|
char com[MAX_COMMAND_LEN];
|
||||||
char *argv[MAX_ARG_NR];
|
char *argv[MAX_ARG_NR];
|
||||||
@ -296,7 +313,7 @@ void setup_shell() {
|
|||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
vfs_getPath(buffer);
|
vfs_getPath(buffer);
|
||||||
printf("%s %s\\> ", user1, buffer);
|
printf("%s@localhost: %s\\$ ", user1, buffer);
|
||||||
if (gets(com, MAX_COMMAND_LEN) <= 0) continue;
|
if (gets(com, MAX_COMMAND_LEN) <= 0) continue;
|
||||||
argc = cmd_parse(com, argv, ' ');
|
argc = cmd_parse(com, argv, ' ');
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user