일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- pintos
- Java
- Flutter
- 자바
- 백준
- 자바스크립트
- HTML
- 모션비트
- TiL
- 핀토스
- 사이드프로젝트
- 오블완
- 소켓
- 티스토리챌린지
- 알고리즘
- corou
- 크래프톤 정글
- Vue.js
- defee
- 리액트
- 나만무
- 스택
- 시스템콜
- 크래프톤정글
- userprog
- 4기
- 코드트리
- JavaScript
- 큐
- CSS
- Today
- Total
목록TiL (157)
미새문지
쿠키와 세션쿠키와 세션의 차이에 대해 설명해주세요.쿠키와 세션은 웹 개발에서 상태를 유지하기 위해 사용하는 두 가지 주요 기술이며, 서로 다른 방식으로 작동하기 때문에 각각의 특성과 용도가 다르다. 쿠키(Cookie)저장 위치쿠키는 클라이언트(사용자)의 웹 브라우저에 저장된다.데이터 저장 방식작은 텍스트 파일로 저장되며, 보통 4KB 정도의 크기로 제한된다.생명 주기쿠키는 설정된 유효 기간이 지나면 자동으로 삭제되며, 유효 기간을 설정하지 않으면 브라우저를 닫을 때 삭제된다.쿠키는 영구 쿠키와 세션 쿠키로 구분됩니다. 영구 쿠키는 유효 기간이 설정된 쿠키이며, 세션 쿠키는 브라우저가 닫힐 때까지 유지된다.보안쿠키는 클라이언트 측에 저장되기 때문에 보안에 취약할 수 있어 민감한 정보를 저장할 때는 주의가 ..
useMemo리액트의 useMemo는 성능 최적화를 위해 사용되는 훅이며, 특정 값이나 연산이 필요할 때 그 값을 메모이제이션(Memoization)하여 재계산을 피하고, 의존성 배열에 지정된 값들이 변경되었을 때만 재계산을 하도록 하는 기능이다. 여기서 메모이제이션은 성능 최적화를 위해 컴포넌트의 특정 계산 결과를 저장하고, 필요할 때만 재계산하여 불필요한 계산을 피하는 기술이다. 메모이제이션은 주로 컴포넌트의 렌더링 성능을 최적화하기 위해 사용된다.메모이제이션의 필요성리액트 컴포넌트는 상태나 프롭스가 변경될 때마다 리렌더링되는데, 복잡한 계산이나 큰 데이터를 다루는 경우, 매번 리렌더링하면 성능 저하가 발생할 수 있기 때문에 메모이제이션을 사용하여 특정 연산의 결과를 저장해두고, 필요한 경우에만 계산..
이번주 스터디는 오후 2시에 시작했는데, 여전히 만석님과 재희님밖에 없는 3인큐 스터디였다. 이번주는 메모리에 관한 키워드가 주제였다. 핀토스 때 가상메모리를 못 했었어서 개념에 대해 한 번 훑어보려 했던 차에 재희님이 야무진 내용을 들고왔었다. 이번엔 배울게 진짜 많았는데, malloc 구현할 때 공부했던 메모리 할당 기법에 대해 다시 복기하는 시간이 되었고, 페이지 크기에 대해 각 장단점을 학습하게 되어 단편화의 비교에 대해 잘 알게 되었다. 꼭 공부한 내용도 누군가한테 설명하려고 하면 어떻게 말이 잘 안나오게 되더라. 처음엔 학습이 부족해서 그런 줄 알았는데, 설명을 하려할 때에 머릿속에서 정리를 하고 말해야 하는데 정보들이 뒤죽박죽 되어있어 설명이 좀 모호한 것 같아 연습을 좀 더 해야겠다. 문제..
가상 메모리가상 메모리란 무엇일까요?가상 메모리는 컴퓨터 시스템에서 실제 물리적 메모리(주기억장치)의 제한을 극복하기 위해 사용되는 메모리 관리 기술이이며, 운영 체제가 메모리를 효율적으로 관리하고 프로그램이 요구하는 메모리보다 물리적 메모리가 적을 때도 프로그램을 실행할 수 있도록 한다. 주요 기능주소 공간의 확장:가상 메모리는 각 프로그램이 독립적인 주소 공간을 갖도록 하여, 물리적 메모리의 크기와 관계없이 프로그램이 큰 메모리 공간을 사용할 수 있게 한다. 이를 통해 프로그램이 실제 메모리보다 더 큰 메모리 공간을 사용할 수 있다.페이지화(Paging): 가상 메모리는 일반적으로 작은 고정 크기의 블록으로 나뉘는데, 이러한 블록을 '페이지'라고 하며, 가상 메모리의 페이지와 물리적 메모리의 페이지 ..
메모리 연속할당first fit, best fit, worst fit에 대해 설명해주세요.1. first fitfirst fit 알고리즘은 메모리 할당 요청이 들어왔을 때, 첫 번째로 발견된 충분한 크기의 빈 메모리 블록에 할당하는 방식이다.장점:구현이 간단하고, 빠르게 동작한다.처음에 발견한 블록을 할당하기 때문에 시간 복잡도가 상대적으로 낮다.단점:메모리의 앞쪽 부분에 작은 빈 공간들이 남아 단편화(fragmentation)가 발생할 수 있다.시간이 지나면 작은 블록들이 많이 생겨서 큰 블록을 할당하는 것이 어려워질 수 있다.2. best fitbest fit 알고리즘은 메모리 할당 요청이 들어왔을 때, 충분한 크기의 빈 블록 중에서 가장 작은 블록에 할당하는 방식이다.장점:빈 메모리 공간을 효율적으..
캐시 메모리캐시 메모리는 어디에 위치해 있나요?캐시 메모리는 컴퓨터 시스템에서 매우 중요한 역할을 하는 고속 메모리로, CPU와 주 메모리(RAM) 사이에 위치해 있다.일반적으로 캐시 메모리는 세 가지 계층으로 나눌 수 있다.L1 캐시 (Level 1 Cache)L1 캐시는 CPU 코어 내부에 위치해 있으며, 데이터 캐시와 명령어 캐시로 나뉠 수 있다.각 코어마다 별도의 L1 캐시가 존재하며, 가장 작은 크기(일반적으로 수십 KB)지만 가장 빠른 속도를 가진다.L2 캐시 (Level 2 Cache)L2 캐시는 일반적으로 각 CPU 코어마다 별도로 존재하지만, L1 캐시보다는 크기가 크고(일반적으로 수백 KB에서 수 MB) 속도는 조금 느리다.일부 CPU 아키텍처에서는 L2 캐시가 모든 코어가 공유하는 구..
IPC(Inter-Process Communication) IPC가 무엇이고, 어떤 종류가 있는지 설명해 주세요. IPC는 프로세스 간 통신을 의미하는데, 이는 컴퓨터 시스템 내에서 실행 중인 여러 프로세스가 서로 정보를 교환하거나 동기화하기 위해 사용하는 다양한 메커니즘을 포함한다.주로 멀티태스킹 환경에서 필수적이며, 분산 시스템, 병렬 처리, 네트워크 통신 등 다양한 응용 분야에서 사용된다. IPC의 주요 목적데이터 공유: 프로세스 간 데이터를 교환데이터 보호: 동시 접근 시 데이터의 일관성을 유지동기화: 여러 프로세스 간의 작업 순서를 제어원격 프로시저 호출: 다른 프로세스의 함수를 호출하여 결과를 얻는다.IPC의 주요 종류파이프(Pipes)익명 파이프(Anonymous Pipes): 한 프로세스에..
어제 스터디 개념학습을 하고 오늘 스터디 전까지 알고리즘 문제를 풀었다. 확실히 알고리즘 문제를 너무 쉬어서 그런지 이해도 잘 안되고 너무 어렵더라문제는 총 5문제 였는데 3문제는 도전도 못하고 한문제 풀고 한문제 풀다가 못풀었다. 푼 문제는 이진 탐색 트리인데 이 문제다.import sysinput = sys.stdin.readlineK = int(input())arr = list(map(int, input().split()))levels = [[] for _ in range(K)]stack = [(0, len(arr) - 1, 0)]while stack: start, end, level = stack.pop() if start > end: continue mid =..