diff --git a/Build.tar b/Build.tar new file mode 100644 index 0000000..c23a5b0 Binary files /dev/null and b/Build.tar differ diff --git a/Src/Hyperion-bash/bin/lua b/Src/Hyperion-bash/bin/lua index 8695444..8c8701f 100644 --- a/Src/Hyperion-bash/bin/lua +++ b/Src/Hyperion-bash/bin/lua @@ -29,6 +29,7 @@ while true do if not ok then print(err) end + printInline("> ") stopInput=false str="" end diff --git a/Src/Hyperion-bash/bin/ps b/Src/Hyperion-bash/bin/ps index e69de29..97a99ea 100644 --- a/Src/Hyperion-bash/bin/ps +++ b/Src/Hyperion-bash/bin/ps @@ -0,0 +1,4 @@ +for i,v in ipairs(syscall.getTasks()) do + local task = syscall.getTask(v) + print(task.pid,task.username,task.name,task.status) +end \ No newline at end of file diff --git a/Src/Hyperion-kernel/lib/modules/Hyperion/01_stdlib.kmod b/Src/Hyperion-kernel/lib/modules/Hyperion/01_stdlib.kmod index 1752eb9..af99aa6 100644 --- a/Src/Hyperion-kernel/lib/modules/Hyperion/01_stdlib.kmod +++ b/Src/Hyperion-kernel/lib/modules/Hyperion/01_stdlib.kmod @@ -80,7 +80,7 @@ end function table.hasKey(tabl, query) for i,v in pairs(tabl) do if i==query then - return true + return v end end return false @@ -89,7 +89,7 @@ end function table.hasVal(tabl, query) for i,v in pairs(tabl) do if v==query then - return true + return i end end return false diff --git a/Src/Hyperion-kernel/lib/modules/Hyperion/10_vfs.kmod b/Src/Hyperion-kernel/lib/modules/Hyperion/10_vfs.kmod index 6c6e6f1..64ef8ff 100644 --- a/Src/Hyperion-kernel/lib/modules/Hyperion/10_vfs.kmod +++ b/Src/Hyperion-kernel/lib/modules/Hyperion/10_vfs.kmod @@ -406,7 +406,11 @@ function vfs.listdir(path) if disk:type(diskPath) ~= "directory" then error("ENOTDIR") end local meta = getFileMeta(path) checkperms(meta, "r") - return disk:list(diskPath) + local list = disk:list(diskPath) + if table.indexOf(list,".meta")~=-1 then + table.remove(list,table.indexOf(list,".meta")) + end + return list end function vfs.mkdir(path) diff --git a/Src/Hyperion-kernel/lib/modules/Hyperion/45_hypervisor.kmod b/Src/Hyperion-kernel/lib/modules/Hyperion/45_hypervisor.kmod index cb34e55..028917e 100644 --- a/Src/Hyperion-kernel/lib/modules/Hyperion/45_hypervisor.kmod +++ b/Src/Hyperion-kernel/lib/modules/Hyperion/45_hypervisor.kmod @@ -180,7 +180,7 @@ end function sys.getTasks() local ret={} for i,v in pairs(tasks) do - ret[i]=v.pid + ret[#ret+1]=v.pid end return ret end diff --git a/Src/Hyperion-spm/bin/spm b/Src/Hyperion-spm/bin/spm new file mode 100644 index 0000000..e69de29