Правильно. Системный вызов должен быть один - DoIt() (обязательно большими буквами и без аргументов, для удобства пользователя), который должен понять из контекста что программе надо и просто сделать это.
Простота структуры Unix всегда поражала меня, как большинство людей. Почти все что делается в Unix, выполняется с помощью шести базовых операций (называемых "системными вызовами"). А уж из этих шести базовых вызовов можно построить почти все на свете.
Одной из фундаментальных операций Unix является "операция порождения fork"....<пропуск> Порожденная копия чаще всего выполняет другой процесс - заменяя себя новой программой. Это вторая базовая операция. Остастальные четыре вызова - open, close, read, write. (с) Линус Торвальдс.