본문 바로가기
반응형

분류 전체보기130

운영체제란 무엇인가? 운영체제는 사용자를 위한 프로그램이 아닌 사용자가 실행하는 프로그램을 위한 프로그램이다. 사용자가 만들고 실행하는 운영프로그램은 운영체제의 도움을 받아서 실행된다. 운영체제는 현존하는 프로그램 중 가장 규모가 큰 프로그램 중 하나이다. 운영체제가 제공하는 기능은 다양하다. 운영체제가 다양한 종류가 있어도 운영체제가 프로그램에게 제공해주는 가장 핵심적인 서비스는 존재한다. 예를들어 아이폰과 안드로이드가 제공해주는 각 운영체제는 다르지만 가장 핵심적인 기능은 전화기능, 문자기능, 인터넷연결 기능 운영체제 또한 다양하고 방대한 분량이지만, 가장 핵심적인 서비스는 컴퓨터 자원에 접근하고 조작하는 기능과 프로그램이 올바르고 안전하게 실행괴게 하는 기능이다. 커널 운영체제가 설치된 모든 기기에는 커널이 있다. 실행.. 2023. 8. 5.
React.memo, useCallback, useMemo 이용한 최적화 [React.memo] : 렌더링 최적화 하나의 view 페이지에서 컴포넌트를 각 분리해서 사용할 때는 재사용성을 위해서도 이지만 각 컴포넌트의 렌더링 최적화를 위해서 이기도 하다. 예를들어 state값을 사용하는 하나의 자식 컴포넌트와 state를 가지고 있는 부모 컴포넌트만 렌더링이 되어야 하는데 react의 주된 특징(?)중 하나라고 볼 수 있는, 부모 컴포넌트에서 import된 (렌더링 하지 않아도 되는) 모든 컴포넌트까지 같이 렌더링이 된다. 불 필요한 컴포넌트까지 렌더링이 지속되면 성능 저하의 주요인이 되기 때문에 이를 위해 react.memo를 적용하므로써 문제를 해결 할 수 있다. React.memo의 적용방법: 원하는 컴포넌트(예제에서는 satate에 주 사용되는 컴포넌트) 에 React.. 2023. 7. 24.
운영체제를 알아야 하는 이유 컴퓨터 부품들을 실질적으로 동작시켜주는 가장 근원적인 프로그램인 운영체제 컴퓨터 부품들은 전기만 공급하면 마법처럼 동작되는 것이 아니다. 결과적으로 동작시켜주는 가장 근원적인 프로그램이 운영체제이다 운영체제: 안드로이드, ios, windows, macOS, Linux 운영체제란? 모든 프로그램은 실행을 위해 자원을 필요로 한다. (여기서 자원이란? 실행에 있어서 마땅히 필요한 요소들을 가리킨다. ) 자원/ 시스템 자원 다만, 마땅히 필요한 요소에는 컴퓨터의 네 가지 핵심 부품이 포함된다. 하드웨어만의 자원이라 지칭하지 않는다. 때로는 네트워크 패킷 등들이 자원에 속할 수 있다. 운영체제는 이러한 자원들을 프로그램에 할당하고, 각각의 실행되는 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램이다. 메모.. 2023. 7. 19.
다양한 입출력 방법 CPU와 장치 컨트롤러가 정보를 주고 받기 위한 다양한 입출력 방법 프로그램 입출력 인터럽트 기반 입출력 DMA 입출력 [ 프로그램 입출력] 특정 레지스터에 입출력작업을 하는 과정으로 백업작업이 완료 될때까지 반복되게 된다. CPU가 장치 컨트롤러의 입출력 명령어로써 레지스터 값을 읽고 씀으로써 장치 컨트롤러와 상호작용이 이루어진다. 입출력장치는 종류도 다양하고 제품에 따라 다양한 입출력장치가 많기에 규격화 하기가 어렵다. 그렇다면 CPU 어떻게 장치컨트롤러 레지스터들을 어떻게 인식하고 알 수 있을까 * 입출력장치에 연결된 명령어로써 장치컨트롤러와 상호작용하는 방법 예를들어 메모리에 저장된 정보를 하드디스크에 백업 (= 하드디스크에 새로운 정보 쓰기) 1. 프로그램 입출력 1). CPU는 하드디스크 컨트.. 2023. 7. 1.
728x90
반응형