Skip to main content

Posts

Showing posts from December 23, 2003
Using ptrace ptrace() is a system call that enables one process to control the execution of another. It also enables a process to change the core image of another process. The traced process behaves normally until a signal is caught. When that occurs the process enters stopped state and informs the tracing process by a wait() call. Then tracing process decides how the traced process should respond. The only exception is SIGKILL which surely kills the process. The traced process may also enter the stopped state in response to some specific events during its course of execution. This happens only if the tracing process has set any event flags in the context of the traced process. The tracing process can even kill the traced one by setting the exit code of the traced process. After tracing, the tracer process may kill the traced one or leave to continue with its execution. Prototype of ptrace is #include long int ptrace(enum __ptrace_request request, pid_t pid,
Here is a mini tute on how to use CVS Starting 1. Set CVSROOT to the main repositoy where you want to store all the files. Otherwise all commands have following format cvs -d /usr/local/cvs command After setting CVSROOT, we can simple do : cvs command 2. To create a new project, go to the dir with the source and do cvs import -m "log msg" projname vendortag releasetag This imports all the files in this directory recursively into project. Our project is now a part of repository. 3. To get an actual working copy, we need to checkout the module.This is done as cvs checkout projname You have a working copy of the code in CVS