일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 타입 좁히기
- SSR
- recoil
- RTK Query
- map
- 반공변성
- autosize
- Promise
- CI/CD
- tailwind
- async/await
- 무한 스크롤
- 호이스팅
- app router
- 투포인터
- ESlint
- 이분 검색
- useAppDispatch
- 인터섹션
- TS
- webpack
- dfs
- 결정 알고리즘
- 리터럴 타입
- CORS
- 태그된 유니온
- Jest
- Cypress
- React
- 공변성
- Today
- Total
목록학교 (21)
짧은코딩
상호배제 해결방법 -임계영역 해결방법(=상호배제 알고리즘) 상호배제는 임계 영역에 막 들어가는 것을 막는다. 남이 못들어오게하는 entry section이 필요하다. 그리고 exit section이 필요하다. 임계 영역과 상관 없는 것은 잔류 연역에 있다. 임계 영역은 변수 공유하는 문제 때문에 발생한다. -알고리즘1 p1 1~12, p2 13~22, main으로 구분했다. p1과 p2가 병행 프로세스다. 빨간색이 임계영역 어떻게 1개만 임계 영역에 들어가게 하느냐가 포인트 main processnumber을 1로 세팅하고 p1, p2를 동시 수행하게함, p1 7번: 무한루프 processnumber가 2인 것은 거짓이 된다. 그래서 8번째 줄 실행 => 일단 p1이 임계 영역에 진입 p2 17번: 무한..
관계 데이터 연산의 개념 -데이터 모델 = 데이터 구조 + 연산 + 제약조건 제약조건 1. 개체무결성 2. 참조 무결성 3. 도메인 무결성(타입을 맞춰야한다. 나이 속성에 이름 못집어 넣음) -관계 데이터 연산(relational data operation) 관계 데이터 모델의 연산 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것 관계 대수와 관계 해석이 있음(기능과 표현력 측면에서 능력이 동등함) -관계 대수와 관계 해석의 역할 데이터 언어의 유용성을 검증하는 기준 관계 대수나 관계 해석으로 기술할 수 있는 모든 질의를 기술할 수 있는 데이터 언어를 관계적으로 완전(relationally complete)하다고 판단함, 질의(query): 데이터에 대한 처리 요구 관계 대수 -관계..
병행프로세스(Concurrent Process) -병행실행(Concurrent execution on single-core system) 병행성 single core cpu, 1개의 cpu한테 여러 개의 task(프로세스)를 어떻게 시키느냐, 즉 4개의 task가 있을 때 각각의 task를 어떤 식으로 실행하는 게 좋을까? 만약 레디큐에 4개가 줄 서있다. 그러면 운영체제에서 동시에 잘 수행해야 한다. t1의 일부를 실행하다가 내쫓고 t2 일부 실행하다가 내쫓고... 이런 식으로 공용으로 쓸 수 있도록 분할하는 방식이 병행실행이다. 엄밀히 따지면 운영체제 입장에선 동시 실행은 아니다. 하지만 사용자 입장에선 동시 실행처럼 보인다 ->체감 성능을 어떻게 올리는지가 핵심 -병렬실행(Parallelism on..
관계 데이터 모델의 개념 -관계 데이터 모델의 기본 개념 1. 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델 2. 하나의 개체에 대한 데이터를 하나의 릴레이션에 저장 -릴레이션(relation) 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장한 것 파일 관리 시스템 관점에서 파일(file)에 대응 -열, 속성(attribute) 릴레이션의 열, 애트리뷰트 파일 관리 시스템 관점에서 필드(filed)에 대응 -행, 투플(tuple) 릴레이션의 행, 한 고객에 대한 속성 값을 모아놓은 것으로 고객 개체의 인스턴스이다. 파일 관리 시스템 관점에서 레코드(record)에 대응 -도메인(domain) 하나의 속성이 가질 수 있는 모든 값의 집합 속성 값을 입력 및 수정할 때 적합성 판단의 기준..
프로세스 개념 프로세스: 실행 중인 프로그램 하드디스크에 프로그램이 저장되어 있다. 프로그램을 시작과정 1. 운영체제는 하드디스크에서 찾음 2. 메모리에 올리기 위해 프로세스로 바꿈 3. 메모리에서 비어있는 부분에 할당해서 저장 4. 저장되어있는 상태가 프로세스 5. cpu가 프로그램을 실행을 시켜준다. 6. 프로그램을 계속 실행하면 메모리 빈 공간에 할당한다. 7. 하지만 많이 실행하면 공간이 없다. 8. 그래서 만든 게 swap라는 하드디스크 공간을 만듦 9. 메모리가 꽉 차면 swap를 마치 메모리 같이 운영을 한다. 10. 제일 만만한 프로세스를 잠시 swap로 옮긴다. 11. 그리고 더블 클릭한 프로세스를 메모리에 실행 12. 옮겨진 프로세스는 영원히 swap에 있을 수 없어서 언젠가 운영체제가..
데이터 모델링과 데이터 모델의 개념 -데이터 모델링(data modeling) 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정 데이터베이스 설계의 핵심 과정 -2단계 데이터 모델링 개념적 데이터 모델링(conceptual modeling): 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업 논리적 데이터 모델링(logical modeling): 개념 세계의 데이터를 데이터베이스에 저장하는 구조로 표현하는 작업 -데이터 모델(data model) 1. 데이터 모델링의 결과를 표현하는 도구 2. 개념적 데이터 모델 사람의 머리로 이해할 수 있도록 현실 세계를 개념적 모델링하여 데이터베이스의 개념적 구조로 표현하는 도구 ex) 개체-관계 모델 3. 논리적 데이터 모델 개..
데이터베이스 시스템의 정의 -데이터베이스 시스템(DBS; DataBase System) 데이터베이스에 데이터를 저장하고, 이를 관리하여 조직에 필요한 정보를 생성해주는 시스템 데이터베이스의 구조 스키마(schema): 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 인스턴스(instance): 스키마에 따라 데이터베이스에 실제로 저장된 값 -3단계 데이터베이스의 구조 미국 표준화 기관인 ANSI/SPARC에서 제안 데이터베이스를 쉽게 이해, 이용하도록 하나의 데이터베이스를 관점에 따라 외부, 개념, 내부 단계로 나눈 것 각 단계별로 다른 추상화(abstraction)제공, 내부 -> 외부로 갈수록 추상화 레벨 높아짐 외부 단계(external level): 개별 사용자 관점 개념 단계(conc..
데이터베이스 관리 시스템의 등장 배경 -파일 시스템(file system) 데이터를 파일로 관리하기 위해 파일을 생성, 삭제, 수정, 검색하는 기능을 제공하는 소프트웨어 응용 프로그램마다 필요한 데이터를 별도의 파일로 관리함 -파일 시스템의 문제점 1. 같은 내용의 데이터가 여러 파일에 중복 저장 -> 데이터 중복성, 저장 공간의 낭비 + 일관성, 무결성 유지가 어려움 2. 응용 프로그램이 데이터 파일에 종속적이다 -> 데이터 종속성, 사용하는 파일의 구조를 변경하면 응용 프로그램도 함께 변경해야 함 3. 데이터 파일에 대한 동시 공유, 보안, 회복 기능이 부족하다 4. 응용 프로그램 개발이 쉽지 않다 *무결성: 데이터 베이스에 값이 정확하다는 것을 의미한다. 데이터베이스 관리 시스템의 정의 -데이터베이..
-데이터베이스의 필요성 데이터(data): 현실 세계에서 단순히 관찰하거나 측정하여 수집한 사실이나 값 정보(information): 의사 결정에 유용하게 활용할 수 있도록 데이터를 처리한 결과물 정보 처리(information processing): 데이터에서 정보를 추출하는 과정 또는 방법 정보 시스템(information system): 조직 운영에 필요한 데이터를 수집하여 저장했다가 필요할 때 유용한 정보를 만들어 주는 수단 데이터베이스: 정보 시스템 안에서 데이터를 저장하고 있다가 필요할 때 제공하는 역할을 담당 -데이터베이스의 정의와 특징 데이터베이스(DB; DataBase): 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합 통합 데이터: 최소의 중복과..
-운영체제 발전과정 -운영체제의 역사 기술이 발전하면서 PC의 크기가 줄어듬, 성능은 좋아짐 현재는 유닉스, 윈도우, 리눅스가 크게 사용 -운영체제의 세부기능 시스템 호출: 커널을 이용할 때 지키는 규격 커널: 운영체제의 핵심적인 기능을 모아놓은 것으로, 자동차에 비유하면 엔진에 해당한다. 커널에서 제공하는 기능은 자원관리 기능, 기타 기능 자원관리 기능(기본, 필수): Memory, Process, I/O Device, File, CPU Managgement 기타 기능(부가): Security, Networking & Distributed Managgement, Command Interpreter(=Shell, 명령을 통해 운영체제에 접근해 사용할 수 있음) -운영체제의 기능 1. 메모리 관리 기능 어..