티스토리 뷰


역시 이번 우리학교 과제였던 쓰레드 쉘 구현 입니다.

이전에 fork() 함수로 구현했던 쉘 소스를 fork() 대신 thread로 구현하는 과제였습니다.

너무나 간단하게 끝이나네요.

참고하세요.

#include <stdio.h>
#include <pthread.h>

char buf[50];
char buf2[50];

int status;

void* cmd() {
 system(buf);
}

int main() {

  int pid;
  int i;
  pthread_t thread;

  while(1) {

    printf("YCG>> ");
    gets(buf);

    char* ptr = NULL;

    ptr = strstr(buf, "*");

    if(ptr != NULL) { // *가 존재하고
     status = pthread_create(&thread, NULL, cmd, (void*)buf);
    }
    else {
   status = pthread_create(&thread, NULL, cmd, (void*)buf);
   pthread_join(thread, (void**)&status);
    }
  }
}

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크