Compare commits
2 Commits
8920c074c4
...
0ac4923568
Author | SHA1 | Date | |
---|---|---|---|
0ac4923568 | |||
d90ce84cdb |
@ -3,6 +3,17 @@ local fs = require "fs"
|
||||
local shell = require "shell"
|
||||
local shutil = {}
|
||||
|
||||
local function wrapUnits(n)
|
||||
local scale = {"K","M","G","T","P"}
|
||||
local count = 0
|
||||
while n >= 1024 do
|
||||
count = count + 1
|
||||
if not scale[count] then return "inf" end
|
||||
n = n / 1024
|
||||
end
|
||||
return tostring(math.floor(n))..(scale[count] or "")
|
||||
end
|
||||
|
||||
function shutil.import(lib)
|
||||
local cE = os.getenv("INCLUDE") or shell.include
|
||||
local nE = {}
|
||||
@ -51,16 +62,6 @@ function shutil.df()
|
||||
ml = v:len()
|
||||
end
|
||||
end
|
||||
local scale = {"K","M","G","T","P"}
|
||||
local function wrapUnits(n)
|
||||
local count = 0
|
||||
while n > 1024 do
|
||||
count = count + 1
|
||||
if not scale[count] then return "inf" end
|
||||
n = n / 1024
|
||||
end
|
||||
return tostring(math.floor(n))..(scale[count] or "")
|
||||
end
|
||||
local fstr = "%-"..tostring(ml).."s %5s %5s"
|
||||
print("fs"..(" "):rep(ml-2).." size used")
|
||||
for k,v in pairs(mt) do
|
||||
@ -94,6 +95,11 @@ function shutil.mount(addr,path)
|
||||
end
|
||||
end
|
||||
|
||||
function shutil.free()
|
||||
print("Total Used Free")
|
||||
print(string.format("%5s %5s %5s",wrapUnits(computer.totalMemory()),wrapUnits(computer.totalMemory()-computer.freeMemory()),wrapUnits(computer.freeMemory())))
|
||||
end
|
||||
|
||||
shutil.cd = os.chdir
|
||||
shutil.mkdir = fs.makeDirectory
|
||||
shutil.cp = fs.copy
|
||||
|
@ -8,6 +8,38 @@
|
||||
--#include "module/devfs/syslog.lua"
|
||||
--#include "module/loadfile.lua"
|
||||
--#include "module/vt-task.lua"
|
||||
os.spawnfile("/boot/exec/init.lua")
|
||||
|
||||
os.spawn(function()
|
||||
os.setenv("PWD","/boot")
|
||||
io.input("/dev/null")
|
||||
io.output("/dev/syslog")
|
||||
local f = io.open("/boot/cfg/hostname","rb")
|
||||
local hostname = computer.address():sub(1,8)
|
||||
if f then
|
||||
hostname = f:read("*l")
|
||||
f:close()
|
||||
end
|
||||
os.setenv("HOSTNAME",hostname)
|
||||
syslog(string.format("Hostname set to %s",hostname))
|
||||
local pids = {}
|
||||
local function loadlist()
|
||||
local f = io.open("/boot/cfg/init.txt","rb")
|
||||
if not f then return false end
|
||||
for line in f:read("*a"):gmatch("[^\r\n]+") do
|
||||
pids[line] = -1
|
||||
end
|
||||
f:close()
|
||||
end
|
||||
loadlist()
|
||||
while true do
|
||||
for k,v in pairs(pids) do
|
||||
if not os.taskInfo(v) then
|
||||
syslog("Starting service "..k)
|
||||
pids[k] = os.spawnfile("/boot/service/"..k)
|
||||
end
|
||||
end
|
||||
coroutine.yield()
|
||||
end
|
||||
end, "init")
|
||||
|
||||
os.sched()
|
||||
|
Loading…
Reference in New Issue
Block a user