반응형 전체 글144 컴퓨터구조 + 운영체제_프로세스_02 프로세스는 저마다의 상태를 가지고 있다. 운영체제는 이러한 여러 프로세스의 다양한 상태를 PCB에 기록해서 관리하고 있고 동시에 수많은 프로세스를 계층적으로 관리를 한다. [프로세스 상태] 운영체제마다 조금씩 차이가 있지만 대부분 공통적인 상태는 5가지가 있다. 생성 상태 이제 막 생성된 프로세스로 메모리에 적재되어 PCB를 할당 받은 상태이다. 프로세스가 원래는 보조기억장치에 저장되어 있는 하나의 데이터 덩어리 > 프로세스가 생성되면 운영체제가 해당 프로세스에 PCB를 할당 > 프로세스가 끝나면 PCB를 폐기하는 사용완료가 된다. 생성단계를 거쳐서 언제든지 CPU에 할당받아 사용할 수 있는 상태가 되면 준비 상태가 된다. 준비 상태 당장이라도 CPU를 할당 받아 실행할 수 있지만 자신의 차례가 아니기에.. 2023. 8. 19. 컴퓨터구조 + 운영체제_프로세스_01 '실행 중인 프로그램' = 프로세스 프로그램이 실행되기 전까지는 그저 보조기억장치에 있는 데이터 덩어리 일뿐 보조기억장치에 저장된 프로그램을 메모리에 적재하고 실행하는 순간 해당 프로그램은 프로세스가 된다. 그리고 이러한 과정을 프로세스를 생성한다 라고 표현한다. 사용자가 보는 앞에서 실행되는 프로세스는 포그라운드 프로세스(웹브라우저, 워드프로세스, 메모장, 게임 등), 사용자가 보지 못하는 뒤에서 실행되는 프로세스는 백그라운드 프로세스라고 한다. 사용자가 직접 상호작용이 가능한 백그라운드 프로세스 사용자와 상호작용하지 않고 정해지 일만 수행하는 프로세스 (데몬, 서비스 등) 그렇다면 이러한 프로세스를 운영체제가 어떤식으로 관리하는 것일까? [프로세스 제어 블록] - PCB(Process Control .. 2023. 8. 12. 운영체제란 무엇인가? 운영체제는 사용자를 위한 프로그램이 아닌 사용자가 실행하는 프로그램을 위한 프로그램이다. 사용자가 만들고 실행하는 운영프로그램은 운영체제의 도움을 받아서 실행된다. 운영체제는 현존하는 프로그램 중 가장 규모가 큰 프로그램 중 하나이다. 운영체제가 제공하는 기능은 다양하다. 운영체제가 다양한 종류가 있어도 운영체제가 프로그램에게 제공해주는 가장 핵심적인 서비스는 존재한다. 예를들어 아이폰과 안드로이드가 제공해주는 각 운영체제는 다르지만 가장 핵심적인 기능은 전화기능, 문자기능, 인터넷연결 기능 운영체제 또한 다양하고 방대한 분량이지만, 가장 핵심적인 서비스는 컴퓨터 자원에 접근하고 조작하는 기능과 프로그램이 올바르고 안전하게 실행괴게 하는 기능이다. 커널 운영체제가 설치된 모든 기기에는 커널이 있다. 실행.. 2023. 8. 5. React.memo, useCallback, useMemo 이용한 최적화 [React.memo] : 렌더링 최적화 하나의 view 페이지에서 컴포넌트를 각 분리해서 사용할 때는 재사용성을 위해서도 이지만 각 컴포넌트의 렌더링 최적화를 위해서 이기도 하다. 예를들어 state값을 사용하는 하나의 자식 컴포넌트와 state를 가지고 있는 부모 컴포넌트만 렌더링이 되어야 하는데 react의 주된 특징(?)중 하나라고 볼 수 있는, 부모 컴포넌트에서 import된 (렌더링 하지 않아도 되는) 모든 컴포넌트까지 같이 렌더링이 된다. 불 필요한 컴포넌트까지 렌더링이 지속되면 성능 저하의 주요인이 되기 때문에 이를 위해 react.memo를 적용하므로써 문제를 해결 할 수 있다. React.memo의 적용방법: 원하는 컴포넌트(예제에서는 satate에 주 사용되는 컴포넌트) 에 React.. 2023. 7. 24. 이전 1 ··· 5 6 7 8 9 10 11 ··· 36 다음 728x90 반응형