New answers tagged scheduling
If you need in depth scheduling info, you could use one of these tools - perf SystemTap dtrace (I dont know what the state of the linux port is) sysdig All of these can tap into kernel hooks to display events such as context switches, interrupts, I/O, system calls etc.
You can get a lot of internal information about processes, the scheduler, and other components of the OS and the hardware by using cat /proc/... where ... can be many things. For instance, it could be a process ID, followed by a lot of specific information request, or scheduler debug information request, for example: cat /proc/sched_debug To see the ...
The ps command is a good place to start. It allows you to specify what information to display for a set of selected processes (possibly all processes). You can read the man page for detailed information on the available information you can get, which are specified as flags to the -O option. The following is a start for what you might want: ps -O "%mem ...
The format seems to be correct (after correction applied posted in the comment above). Are there some special restrictions for having everything in a single line? In case you need to have everything in a single line, I would suggest to change the shell script to avoid Fridays 2-9am, eg #!/bin/bash # THIS CODE IS NOT TESTED # skip on fridays 2-9am # what ...
You are missing how nice works. It is simply a hint to the scheduler for it to prioritize some processes against others when there is a CPU bottleneck. I there is nothing else running, whatever its niceness, your process will be granted all the CPU power so there is no need to change the niceness in that specific case.
You can't get a PID of a process which is not currently running, so there is no meaning for PID of a scheduled job.
Each Processor has a run-queue, and might want to access other run-queues of other Processors. Locking is required to avoid corruption when a run-queue is manipulated by two or more Processors. Reference: Linux Kernel Development by Robert Love ( Partially available at http://www.informit.com/articles/article.aspx?p=101760&seqNum=2 )
at reads the command to execute from the standard input. You are not sending the command to execute to at. You are executing your command and sending the output of your command to at. Try something like: echo 'nohup nice MY_PROGRAM > foo.out 2> foo.err < /dev/null' | at 05:23 The echo command will print the string 'nohup nice MY_PROGRAM' and ...
Top 50 recent answers are included