Skip to content
Snippets Groups Projects
Select Git revision
  • c9a27c9545a59758e86aa1e564132f521d013466
  • master default protected
2 results

README

Blame
  • user avatar
    Petr Baudis authored
    Complete basic implementation, compiles but not tested yet.
    1181c4cc
    History
    README 998 B
    **Computations under control** will run a specificed program as
    a non-interactive computation process, allowing it to be listed
    and regulated by the user of the computer.
    
    To avoid needless use of setuid, it uses a simple client-server
    architecture. On boot, compctld daemon is started (as root),
    sets up the cgroup infrastructure and accepts requests from clients
    for moving a process to cgroup, killing a cgroup'd process and
    tweaking the cgroup limits.
    
    The client compctl interface simply queries the server using
    a synchronous protocol over a UNIX socket. First, the client
    sends a SCM_CREDENTIALS ancilliary message. Then, it follows
    with a CRLF-terminated command string and receives a CRLF-terminated
    reply string. Connection is closed immediately on breach of protocol.
    
    
    You can tweak some simple compile-time configuration variables
    in file 'common.h'. Build everything using the `make` command.
    Then, arrange compctld to be run on boot and put compctl in $PATH
    for your users to enjoy.