분류 전체보기 (16) 썸네일형 리스트형 OS -4 : 메모리와 캐시 메모리 메모리 내부에 위치할수록 접근빈도/속도가 올라가며 용량은 적고 가격은 올라간다. 참조지역성에 따라 data를 저장한다. 캐시메모리 CPU와 DRAM간의 속도차이가 너무 커서 CPU 명령을 수행하는데 제한 사항이 많다 DRAM보다 빠른 SRAM을 이용하여 메인 메모리 중 자주 접근되는 데이터를 저장한다. *DRAM vs HDD? I/O처리가 드물거나 없는 경우 HDD에 접근할 필요가 없으므로 우선순위가 낮아진다. + CPU-DRAM간의 차이가 DRAM-HDD간의 차이보다 크다 캐시메모리 캐시메모리가 있는 컴퓨터 시스템은 CPU가 메모리에 접근하기 전 먼저 캐시 메모리에서 원하는 데이터의 존재 여부를 확인한다. 이때 찾고자하는 데이터가 캐시에 존재하는지 여부는 참조의 지역성에 달려있다. 참조 지역성은.. OS -3 : Interrupt 인터럽트란? cpu가 동작과정 중 예기치 않은 문제가 발생했을 때, 다음 fetch를 멈추고 이를 처리하는 것. 현재상태(PSW / PC)를 control stack에 푸쉬하여 저장한 뒤, interrupt handler라는 운영체제 자체 내장 프로그램을 이용 I/O 디바이스의 처리속도가 느리므로, I/O처리가 끝났음을 알려줄때에도 이용 Enabled? cpu가 중단되어서는 안되는 중요한 일을 처리 중인 경우 Control & status register의 interrupt Enabled/Disabled 레지스터를 이용하여 interrupt check를 skip할 수 있다. Interrupt 전 Stage 저장하기 ⓐ 스택 포인터에 저장된 위치부터 현재 레지스터까지의 정보를 저장 ⓑ 새로운 stack p.. [BOJ] 10800 컬러볼 https://www.acmicpc.net/problem/10800 10800번: 컬러볼 첫 줄에는 공의 개수를 나타내는 자연수 N이 주어진다(1 ≤ N ≤ 200,000). 다음 N개의 줄 중 i번째 줄에는 i번째 공의 색을 나타내는 자연수 Ci와 그 크기를 나타내는 자연수 Si가 주어진다(1 ≤ Ci ≤ N www.acmicpc.net 문제 지훈이가 최근에 즐기는 컴퓨터 게임이 있다. 이 게임은 여러 플레이어가 참여하며, 각 플레이어는 특정한 색과 크기를 가진 자기 공 하나를 조종하여 게임에 참여한다. 각 플레이어의 목표는 자기 공보다 크기가 작고 색이 다른 공을 사로잡아 그 공의 크기만큼의 점수를 얻는 것이다. 그리고 다른 공을 사로잡은 이후에도 본인의 공의 색과 크기는 변하지 않는다. 다음 예제는.. [PGMRS] 테이블 해시 함수 https://school.programmers.co.kr/learn/courses/30/lessons/147354 문제 설명 완호가 관리하는 어떤 데이터베이스의 한 테이블은 모두 정수 타입인 컬럼들로 이루어져 있습니다. 테이블은 2차원 행렬로 표현할 수 있으며 열은 컬럼을 나타내고, 행은 튜플을 나타냅니다. 첫 번째 컬럼은 기본키로서 모든 튜플에 대해 그 값이 중복되지 않도록 보장됩니다. 완호는 이 테이블에 대한 해시 함수를 다음과 같이 정의하였습니다. 해시 함수는 col, row_begin, row_end을 입력으로 받습니다. 테이블의 튜플을 col번째 컬럼의 값을 기준으로 오름차순 정렬을 하되, 만약 그 값이 동일하면 기본키인 첫 번째 컬럼의 값을 기준으로 내림차순 정렬합니다. 정렬된 데이터에서 S.. [BOJ]17245 서버실 https://www.acmicpc.net/problem/17245 문제 서버실은 여러 대의 서버 컴퓨터들을 안정적으로 운영할 수 있는 환경을 유지하기 위해 설치된 공간을 말한다. 이 회사의 서버실은 N×N 칸으로 구분되어 있고, 각 칸마다 서버 랙이 있어 컴퓨터를 여러 대 쌓을 수 있다. 서버가 과열되지 않도록 서버실에는 언제나 냉방기가 작동하고 있다. 그런데 회사가 경제적으로 어려움에 처한 나머지, 서버실의 운영 비용을 줄이기 위해 서버실 내의 컴퓨터 중 절반만 정상적으로 관리하기로 하였다. 냉방기에서 나온 차가운 공기는 서버실의 아래쪽부터 서서히 차오른다. 1분마다 컴퓨터 한 대의 높이만큼 방을 채운다. 이 회사의 서버 컴퓨터는 환경에 매우 민감하여 차가운 공기를 받아야만 동작하고 그렇지 못하면 장.. [Tailwind] Flex Tailwind css를 공부하다 justify, place 배치 요소를 사용하면서 flex에 대한 공부가 필요한 것 같아서 작성. flex란? 레이아웃을 설정할 때 보통 display, position과 같은 css 속성들을 이용한다. 그런데 이러한 속성들로 일일이 레이아웃의 속성을 정의하는 게 몹시 복잡한 단점때문에 css3에 flex라는 방식이 새롭게 추가되었다. flexbox는 부모 요소인 flex container와 자식 요소인 flex item으로 구성된다. flex container가 flex 태그의 영향을 받는 공간이고, 그 안에서 flex item들의 배치, 정렬이 설정된 속성에 따라 변경되는 것이다. flex container와 flex item에는 적용할 수 있는 속성이 각각 다르다... [Tailwind] image 배치 로 묶은 블록 다음에 다른 블록을 그리려고 하는데, 어떻게 해야할까? block 옵션을 주어도 div간 구분이 안되고 겹쳐서 rendering이 되었다. import type { GetServerSideProps, NextPage } from "next"; import Image from "next/image"; import background from "../images/background.jpg"; const Body = ({}) => { return ( Another Body! ); }; export default Body; 크롬 개발자 도구로 그림을 찍어보니 다음과 같이 나타났다 background라는 이미지 파일이 창 전체를 덮고 있었는데, 아무래도 저 부분이 문제인 것 같다. layout옵션을.. React - 7) DOM, Rendering DOM DOM은 Document Object Model의 약자로 구조화된 문자들의 표현이다. 웹 개발자들에게는 이 문자가 HTML 코드를 의미할 것 이며, 이때 DOM은 단순하게 HTML DOM이라고 불린다. HTML의 요소들은 DOM의 노드가 된다. 따라서 HTML이 문자이고, DOM은 이 문자들의 메모리 내 표현인 것이다. 브라우저는 HTML 문자를 이해할 수 없기 때문에, 브라우저가 이해하고 활용할 수 있도록 변환이 필요하다. DOM은 브라우저 렌더링 엔진의 HTML parser에 의해 생성된 트리 구조의 Node 객체 모델이다. DOM은 자바스크립트를 사용하여 문서에 대한 추가, 삭제, 이벤트 처리 등을 처리하는 인터페이스를 제공한다. 웹 페이지의 내용을 동적으로 변경하고자 할 때마다 DOM을 수.. 이전 1 2 다음