Programming :: Retrieve All Process That Use Over 10% CPU Time?
Apr 23, 2010Writing a bash shell script that list all process that use over 10% CPU time?
View 1 RepliesWriting a bash shell script that list all process that use over 10% CPU time?
View 1 RepliesI have a test framework written in tcl which i run for 5-6 hours.Now i want to retrieve the pid of the process (execution using framework) as first few line of the script and do some processing.
How this PID retrieval is possible in tcl?
Scenario: ( in C++ code)
I need a process A to be able to get the start time of process B. I have the PID of the process B.
I would have thought there would be a simple system call to make by passing in the pid of Process B, but I don't thing there is??!!
So my other thought is to create a script that will be passed the pid and either I can read the file creation of /proc/<PID>/stat or I could also parse the start time of ps on the <PID>. This script can be ran from the C++ code. My difficulty is capturing this information in the C++ code. If I run exec ( or system if not a script) I need the results in a program variable....not stdout.
My only solution is write it to a tmp file and read it back into the program variable. Seems rather arguious but a least it would work.
Background - I need to port Windows code ( GetProcessTimes(creationtime,...))
How can i check what operating system, i am running on, at run time?Moreover, how can i retrieve that current state of process?
View 4 Replies View RelatedI want to get system info like up time, no of process etc. for up time i got the got from net but it is giving me error. i.e.
error:
Following is the code i m using
Code:
Whats wrong with the code?
get the values for the user time and system time for a process.i have tried getrusage to get values of ru_utime and ru_stimebut these don't seem to be correct
View 3 Replies View RelatedI want to know the time on a server accurate to the millisecond.there's this way:
local $ ssh user@servername
Welcome to server!
server $ date
Fri Feb 18 11:27:50 EST 2011
But I need more accuracy. Is there a command that will be more precise?
I have a shell script to identify whether the process is running or not. If the process is not running, then I execute another script file to run my application. Below is my script and saved this script as monitorprocess.sh Code: #!/bin/bash
result=$(ps -ef | grep -v grep | grep "applicationname.sh" | awk '{print $2}')
echo $result
if [ "$result" == "" ];
[code]...
Is there any difference in cpu usage for process in init.rc(runs automatic when boot is happened) and manually running process. Will these both have same priority by default...?
View 1 Replies View RelatedI tried googling but didn't get any answer for this.I have a process called "abc" and it is running with PID "123".I have a putty session opened with PID "999".I am giving kill -TERM 123 from putty session.My process "abc" before dying it should catch the PID of the terminal which provided TERM signal to it.Is there any way to find this out
View 2 Replies View Relatedi'm programming a small widget for a panel and need some information from my system. The command on the shell would be whoami to find out which user i am. This information is needed for my widget to set up the title of the widget, the information of the user will be retrieved out of the /etc/passwd (the code works just fine), but i don't know how i can get the information. One possibility would be to create a child process, call whoami with execlp(). But how can i retrieve the output of that process?
View 3 Replies View RelatedI'm trying to retrieve a single string or value from /proc/cpuinfo, but when I try to extract the model (not the model name) the model name comes with it, also it likes to print it twice...
Code:
model="`cat /proc/cpuinfo | grep model | cut -d: -f2 | cut -c1-3`"
echo $model
All i want this to do is spit out the model number once. (I need to pass it to another script)
I have a shell script to identify whether the process is running or not. If the process is not running, then I execute another script file to run my application. Below is my script and saved this script as monitorprocess.sh
Code:
#!/bin/bash
result=$(ps -ef | grep -v grep | grep "applicationname.sh" | awk '{print $2}')
[code]...
I am using Debian linux. I have 100 timers running. If a timer expired which will generate a signal and it was mapped to a same function handler. All the timers are mapped to one function handler. The problem is if the timer expires one at a time, the function handler called at a time. But if the 2 timers expires at a time, the function handler is called one time only instead 2 times. Is it possible to invoke the function handler as many times based on timer expirary happens simultaneoulsy?
View 14 Replies View RelatedI started to use linux (CentOS 5) 1 week ago. And I took lot of imformation from this forum. Is it possible to install two program at same time?
Total download size: 67 M
Is this ok [y/N]: y
Downloading Packages:
jdk-6u24-linux-i586.rpm 19% [========-] 6.0 kB/s | 13 MB 153:51 ETA
It is so boring to wait and I have to wait there is nothing to do something else just centOs text.
Is there a way to get the current time as provided from NTP (not the currently set time on the server)?
View 4 Replies View RelatedI am trying to set time using settimeofday in linux. But it sets local time. i.e works like SetLocalTime in windows. But I want to set system time(like SetSystemTime in windows). I could'nt find no other api in linux. What should i do? I had tried with mktime/gmtime apis
View 3 Replies View RelatedI want to kill parent process after "fork()" method. but if I kill parent process with "exit(0)" method, main() thread is terminated as well so child prosess doesn't work anymore. Is there any way to kill only parent process without affecting to child process?
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
[code]....
I want to limit the time a grep process command is allowed to run or be alive.For example. I want to perform the following:grep -qsRw -m1 "parameter" /varBut before running the grep command I want to limit how long the grep process is to live, say no longer than 30 seconds.How do I do this?And if it can, how do I return or reset to have no time limit afterwards.
View 4 Replies View RelatedIt's pid is increasing all the time...
I'm writing a program to display all the process's info, this process really bother me.
Oh..the Chinese words are sleeping..., can't use, can't use
Centos 5.4 64bitWould like to know when a particular process was started.1.Quote:ll -d /proc/4014/dr-xr-xr-x 5 mysql mysql 0 Nov 28 07:34 /proc/4014/2.Quote:ps -o pid,lstart -p 4014 PIDSTARTED 4014 Tue Nov 17 23:10:13 20091) Which one should I consider?2) why do both have such a difference?
View 1 Replies View RelatedConsider the following code:
Code:
int main()
{
int i=0;
pid_t pid;
for(i=0;i<2;i++)
[code]....
I get the following output:
Parent: chid_pid=4356 i=0 parent's pid=4355
This is child 4356 i=0
This is child 4357 i=1
[code]....
I can observe instead of two children(as I expect) processes there are three. This is because child process 4356 creates its own child. Why all the messages of the type "This is child X i=Y" are concentrated one under another? How exactly fork works? Is affected by the fact that I have a dual-core processor?
I have two files :
FileA
prot1
prot5
prot9
prot15
[Code]....
What I need to do is to extract from fileB the fields containing only the strings in fileA.
I thought awk could do the job easily with :
Code:
awk 'BEGIN { RS = "###" } /'$variable'/' fileB > output
where variable would maybe be the output of grep from fileA. So can I store the output of grep in a variable to use it afterwards with awk ?
something like that:
Code:
result=`grep prot. fileA` ; awk 'BEGIN { RS = "###" } /'$result'/' fileB > output
but that doesn't work. I'm always getting the entire fileB.
The output of grep get stored in the variable, I verified that with echo. So there is something that I just don't get... It seems to me that the above line should work.
i want a process that can operate as both a TCP echo server and a UDP echo server. The process can provide service to many clients at the same time, but involves a single process that does not start up any other threads.
View 3 Replies View RelatedEver since the kernel update to 2.6.34.6-47.fc13.x86_64, my boot process hangs at about startx time. I boot cleanly at runlevel 3 in either this or the previous 2.6.33.8 kernel. If I execute startx from here (in either kernel), the system hangs at the same place. During the early troubleshooting, I read in another thread (250929) about installing xorg-x11-drv-catalyst, which I did using yum. This led to the failure of the 2.6.33 kernel; yum remove did not fix this. I have carefully followed the instructions in the fglrx HOWTO (updated a week ago by Hlingler) as they relate to a PAE kernel (including reinstalling mesa-libGL), and that fixed earlier difficulties. Hence, I felt I needed a new thread.
dmesg tells me
Code:
microcode: CPU0: patch_level=0x2000032
platform microcode: firmware: requesting amd-ucode/microcode_amd.bin
Linux video capture interface: v2.00
piix4_smbus 0000:00:14.0: SMBus Host Controller at 0xb00, revision 0
microcode: CPU1: patch_level=0x2000032
platform microcode: firmware: requesting amd-ucode/microcode_amd.bin
microcode: Microcode Update Driver: v2.00 .....
But the program itself reports
Code:
# microcode_ctl -h
This program is for updating the microcode on Intel processors belonging to the IA32 family - PentiumPro upwards (x86-64 included). It depends on the Linux kernel driver. The website urbanmyth.org/microcode (mentioned by yum info microcode_ctl) clearly indicates that Intel has taken over this microcodecode distribution, and suggests that it is no longer valid for AMD processors.
I found a reference to a kernel configuration flag CONFIG_MICROCODE_AMD (as a plausible subsititute for CONFIG_MICROCODE_INTEL) that possibly belongs in a script in /etc/init.d - but the above context leads me to suspect this is not true any more. In any event, those flags are not mentioned anywhere in my init.d scripts - in fact nowhere in the entire /etc tree. My microcode file exists, and is dated March 23. How do I get it installed? Or is this completely unrelated to my hanging boot problem, as suggested by the "platform microcode" line in the dmesg output? If so, where should I be looking?
eCouldnyone help me out to put the right configuration parameters in the grub.conf file so I can enable or disable the Fedora Logo on boot time ?
Currently I'm seeing 3 bars being filled on boot time. I need to get back the Fedora Logo during the boot time process.
How can I do this?
Possibly related to this previous question, I would like to be able to run a task for a specified amount of time, then stop/kill it, then start it again. Specifically, I run the Folding@Home application on my Linux workstation. Periodically, it will have trouble logging-in to the home server, and will sit idle for a long time, but not release memory/resources it has claimed (yes, I realize this is likely a bug in the tool, but I can't fix that currently). Typically just the act of killing and starting the tool will allow it to check-in again. So, I would like to be able to run something like:
run_for <time> ./fah6
Does such a tool exist, or should I write a wrapper than nukes the fah6 client after, say, a week and restart it?
I'm rather new to linux, and I have a dedi server. I know how to browse, install, remove etc, all the basics needed to use it. I've installed flvtool2, memcoder and ffmpeg, and at the moment im converting avi files in to flv. Im then passing metadata using yamdi.
However, this process is very timely as im converting loads of avi files at a time.Im looking for a script, or a way where I can execute one command/script and which will convert all files in the directory I specify, then run those converted files through yamdi.Im guessing it would be some sort of loop, and then changing for each file?
I have an Acer Aspire netbook with 1GB RAM and 1.6 GHz dual-core 32-bit x86 chips. The KPackageKit / yum / rpm chain is running too slow for me. In addition to the time required to download any new packages or updates, it seems to require at least one full minute of processing time to install each package, update, or bug fix, no matter how small. Another full minute is consumed for each package in "cleaning up."Running yum from the command line takes nearly the same amount of time.During this time, I cannot run any other applications without severe thrashing. It seems that a full gigabyte of memory is in use with some 100M swapped out to disk.
Is there any way to reduce the running time and memory requirement of the update process?While not updating or installing software, I do not normally run out of memory (i.e. begin thrashing) until I have about a dozen browser tabs open, or the like.
I am currently struggling with one of my tasks.I was asked to find a way how to determine how much time an _already running_ process is spending in user and kernel space.E.G. <some tool> <pid>[Control] + [c]<pid> spent 12.1 seconds in user and 1.52 seconds in kernel space.Does something like this exist? Basically I guess I am looking for something similar to time, except that the process is already running.So..a) Is there a tool which fulfills this task?b) Is there a way to write your own software which does the job? Is it even possible to code something I am looking for?I recently found strace -c -p <pid>, but well, this is not exactly what I was looking for.
View 3 Replies View Related