728x90
반응형

운영체제 2

멀티스레드의 장단점

멀티스레드의 장점 응답성 향상 : 한 스레드가 입출력으로 인해 작업이 진행되지 않더라도 다른 스레드가 작업을 계속하여 사용자의 작업 요구에 빨리 응답할 수 있다. 자원 공유 : 한 프로세스 내에서 독립적인 스레드를 생성하면 프로세스가 가진 자원을 모든 스레드가 공유하게 되어 작업을 원활하게 진행할 수 있다. 효율성 향상 : 어러 개의 프로세스를 생성하는 것과 달리 멀티스레드는 불필요한 자원의 중복을 막음으로써 시스템의 효율이 향상된다. 다중 CPU 지원 : 2개 이상의 CPU를 가진 컴퓨터에서 멀티스레드를 사용하면 다중 CPU가 멀티스레드를 동시에 처리하여 CPU 사용량이 증가하고 프로세스 처리 시간이 단축된다. 멀티스레드의 단점 멀티스레드의 경우 모든 스레드가 자원을 공유하기 때문에 한 스레드에 문제가..

운영체제 2023.02.13

fork() 시스템 호출 , exec() 시스템 호출

fork() 시스템 호출 fork() 시스템 호출은 실행 중인 프로세스로부터 새로운 프로세스를 복사하는 함수다. 커널이 제공하는 이 함수는 프로세스를 복사하는 일종의 시스템 호출이다. 예를 들면 크롬에서 어떤 페이지를 보다가 Ctrl + N 키를 누르면 크롬이 하나 더 실행된다. 이것은 새로운 크롬을 실행한 것이 아니라 현재의 크롬 프로세서를 복사한 것이다. fork() 시스템 호출을 하면 프로세스 제어 블록을 포함한 부모 프로세스 영역의 대부분이 자식 프로세서에 복사되어 똑같은 프로세스가 만들어진다. 단, 프로세스 제어 블록의 내용 중 일부가 변경되는데 변경되는 부분은 다음과 같다. 프로세스 구분자(PID) 메모리 관련 정보 부모 프로세스 구분자(PPID)와 자식 프로세스 구분자(CPID)가 바귄다. ..

운영체제 2023.02.13
728x90
반응형