Skip to content

CLI app that allows clients to execute programs on a remote computer. Supports multiple concurrent clients. (class project for Systems Programming, Spring 2016)

License

Notifications You must be signed in to change notification settings

AdeelH/remote-task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

A commandline app that allows clients to execute programs on a remote computer. Supports multiple concurrent clients.

Commands

Client

# Connect to the server.
> conn[ect] <hostname> <port>

# Close the Task Manager and the socket. Keep the client running.
> disconnect

Client -> Task Manager

# Sleep for <seconds> seconds. (Can be used to check the non-blocking behavior of the client).
> sleep <seconds>

# Start <count> instances of the program.
[run] <program-name> [<count>]

# List alive processes.
> list

# List all alive or dead processes started through the Task Manager.
> list all

# List all alive or dead processes started through the Task Manager, 
# along with their start, end, and the elapsed times.
> list details

# Kill process by pid or name
> kill [<pid> | <process-name>]

# Kill all processes
> kill [all | *]

# Add, subtract, multiply or divide.
> add [<num1> [<num2> …]]
> sub [<num1> [<num2> …]]
> mul [<num1> [<num2> …]]
> div [<num1> [<num2> …]]

# Exit the Task Manager.
> exit | ex | quit | q | disconnect

Client -> Task Manager -> Server

# Message shows up on the server terminal.
> msg <message>

Server

# List currently connected clients.
> list

# Disconnect this particular client.
> disconnect <ip>:<port>

# Disconnect all clients.
> disconnect all

# Disconnect any connected clients and exit.
> exit | ex | quit | q

Server -> Task Manager -> Client

# Message shows up each client’s terminal.
> broadcast <message>

# Send command to this client’s Task Manager and receive the output.
> cl <ip>:<port> <command>

About

CLI app that allows clients to execute programs on a remote computer. Supports multiple concurrent clients. (class project for Systems Programming, Spring 2016)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages