Можно средствами Qt- void QPricess::kill() [slot]. Вот пример:
#include <QtGui>
#include <QProcess>
int main(int argc, char **argv){    
    QApplication app(argc, argv);
    QPushButton *button = new QPushButton("kill process while_1");
    button->show();
    QProcess  *process = new QProcess;
    process->start(QString("/home/mike/process_qt/while_1")); // полный путь 
    QObject::connect(button, SIGNAL(clicked()), process, SLOT(kill())); 
    return app.exec();
}
Соберите проект. А также откомпилируйте программку while_1.c(беконечный цикл): gcc while_1.c -o while_1
int main() {
    while (1) { }
}
Запустите основную программу, появится кнопка, откройте другой терминал и в Linux:   ps -e 
Там будет процесс while_1. Нажмите кнопку, опять ps  -e  - его уже не будет.