#!/usr/bin/env sh # estimate sytem boot time # [debug] enable execution tracing #set -x set -e # raw input data #date +%s #sysctl_t0_str=$( sysctl kern.boottime | mawk -F= '{print($NF)}' ) #sysctl_t0=$( date -jf "%a %b %d %H:%M:%S %G" "${sysctl_t0_str}" +%s ) #epsilon1="$( mawk 'BEGIN{print(rand()^2.0)}' )" #t0_est="${sysctl_t0} $(date +%s)" #t0_est="${sysctl_t0} ${sysctl_t0}" #t0_est="${sysctl_t0} ${epsilon1}" #t0_est="${sysctl_t0} 1.0" if [ -f t0_est.log ] ; then { t0_est="$( cat t0_est.log )" } else { t0_est="" } fi printf "N t0_est t0_unc\n" | column -t for N in $(seq 0 10080) ; do printf "${N} ${t0_est}\n" | column -t t0_est=$( mawk -f ckt0.awk ${t0_est} | tail -n2 ) #mawk -f ckt0.awk sleep $( mawk 'BEGIN {print( sqrt(rand()^2.0 + 1.0) )}' ) #sleep $( echo $t0_est | mawk '{print(sqrt(1.0 + ((60.0*$NF)/(60.0 + $NF))^2.0 + rand()^2.0 ))}' ) done printf "${t0_est}\n" | tee t0_est.log # [debug] disable execution tracing set +x