A detecção de um processo já está sendo executada no Windows usando C # .net

Como detecto se um processo já está sendo executado no Gerenciador de tarefas do Windows? Gostaria de obter também o uso da memória e da CPU.