post-thumbnail

디스크 관리와 스케줄링

디스크를 논리적으로 바라보는 단위이다.Logical Block은 디스크의 외부 컴퓨터 호스트가 디스크에 접근할 때 사용되는 단위로, 마치 1차원 배열처럼 구성되어 있다.디스크는 논리적 블록 단위로 접근되며, 컴퓨터는 "몇 번째 블록을 읽어라"라는 식으로 디스크와 상호작

2024년 9월 8일
·
0개의 댓글
·
post-thumbnail

파일 시스템

일반적으로 비휘발성의 보조기억장치에 저장(HDD)OS는 다양한 저장장치를 file이라는 동일한 논리적 단위로 볼 수 있게 해줌연산: create, read, write, reposition(iseek), delete, open, close파일 자체의 내용이 아니라 파일

2024년 9월 7일
·
0개의 댓글
·
post-thumbnail

가상 메모리

요청시 메모리에 올리는 것이다.즉 프로그램이 실제로 필요로 할때 페이지를 메모리에 로드하는 방식이다.1) I/O 양의 감소2) Memory 사용량 감소3) 빠른 응답시간4) 더 많은 사용자 수용Valid/Invalid Bit를 사용한다.Valid Bit: 페이지가 실제

2024년 9월 5일
·
0개의 댓글
·
post-thumbnail

메모리 관리

각 프로세스마다 0번지 부터 시작하는 논리주소 공간을 가짐(Virtual Memory)CPU가 보는 주소주소변환 과정에 OS는 참여하지 않는다. 오직 하드웨어가 관여한다.즉 여기에서 OS의 역할은 없다.메모리에 실제 올라가는 위치주소를 결정하는 것이다.Symbolic주

2024년 9월 4일
·
0개의 댓글
·
post-thumbnail

데드락

교착상태 : 상대방이 가진 자원을 요구 그러나 상대방도 자기거 내놓지 않고 다른 상대방거를 요구한다.데드락: 일련의 프로세스들이 서로가 가진 자원을 기다리면서 block된 상태자원: HW, SW 등을 포함하는 개념ex> I/O Device, CPU cycle, memo

2024년 9월 2일
·
0개의 댓글
·
post-thumbnail

프로세스 동기화3

Semaphore의 용도 1) Lock의 문제(생산자가 동시에 도착)2) 가용자원의 개수세는 용도(버퍼의 유한함)프로듀서는 버퍼에 데이터를 집어넣는다.컨슈머는 버퍼의 데이터를 꺼내간다.생산자가 둘이 동시에 도착하여 비어있는 버퍼를 보고, 생산자 둘이서 데이터 만들어서

2024년 9월 1일
·
0개의 댓글
·
post-thumbnail

프로세스 동기화2

1) P(S): lock을 건다.공유데이터를 획득하는 과정(줄어듬)2) V(S): lock을 푼다.공유데이터를 반납하는 과정프로그래머가 Semaphores를 이용할 수 있다.busy-wait는 효율적이지 못하다. 이를 Block & Wakeup 방식으로 해결가능하다(=

2024년 9월 1일
·
0개의 댓글
·
post-thumbnail

프로세스 동기화1

일반적으로 프로세스들은 각자 하나의 주소공간이 있다.(Virtual Memory) 따라서 Race Condition이 발생하지 않는다.그러나 공유 자원에 접근하는 경우에 Race Condition이 발생한다.S-box(메모리 주소공간)를 공유하는 E-box(CPU 프로

2024년 9월 1일
·
0개의 댓글
·
post-thumbnail

CPU 스케줄링

CPU bound program이 CPU를 잡고 안놓아주면 I/O bound program을 쓰려고한(키보드, 마우스) 사람이 너무 답담함.빈도수 자체도 I/O bound program이 더 높다.1) I/O-bound process사람과 주로 Interaction하는

2024년 9월 1일
·
0개의 댓글
·
post-thumbnail

프로세스 관리

부모 프로세스가 자식 프로세스를 생성프로세스의 트리(계층구조) 형성프로세스는 자원을 필요로 함OS로부터 받는다, 부모와 공유한다.자원의 공유1) 부모와 자식이 모든 자원을 공유하는 모델2) 일부를 공유하는 모델3) 전혀 공유하지 않는 모델(일반적)보통은 부모와 자식이

2024년 8월 31일
·
0개의 댓글
·
post-thumbnail

프로세스

실행중인 프로그램프로세스가 어떤 상태에서 수행되고 있는지를 나타내는 정보1) CPU 수행상태를 나타내는 하드웨어 문맥 -> PC, 각종 레지스터2) 프로세스의 주소공간 -> Code, Data, Stack3) 프로세스 관련 커널 자료구조 -> PCB, 커널스택1) 레지

2024년 8월 30일
·
0개의 댓글
·

시스템 구조&프로그래밍 실행2

I/O 요청 후 입출력 작업이 완료된 후에야 CPU가 사용자 프로그램에 넘어감.문제점기다리는 동안 1) CPU도 낭비, 2) 매순간 I/O 장치도 하나의 일만 한다.극복방안그 하나의 I/O 작업을 기다리지 말고 프로세스에게 CPU를 준다. 프로세스는 또 다른 인스트럭션

2024년 8월 28일
·
0개의 댓글
·
post-thumbnail

ARP Spoofing

출처: Gilbert Lee ARP spoofingL2 스위치는 CAM(Content Addressable Memory) Table 정보를 가지고 있다.MAC Address Table 이라고도 함.CAM 테이블: Mac주소(Key)와 Port번호(Value)의 매칭 정

2024년 8월 19일
·
0개의 댓글
·
post-thumbnail

챗봇의 스트리밍

어떻게 글자를 하나하나 웹에 찍을 수 있을까 라는 의문에서 시작SSE 통신으로 스트리밍 형태 구현이 가능하다.일반적으로, API 서버가 클라이언트에게 데이터를 실시간으로 전달할 수 있는 방법으론 1) WebSocket, 2) SSE, 3) Polling 등의 방식이 존

2024년 8월 1일
·
0개의 댓글
·

챗봇의 멀티턴

정의: 한 번의 질문과 한 번의 응답으로 이루어진 대화 방식이다. 사용자가 질문을 하고 챗봇이 이에 대한 응답을 제공하면 대화가 종료된다.즉 대화의 상태나 맥락을 유지하지 않는다.정의: 여러 번의 질문과 응답이 연속적으로 이루어지는 대화 방식이다. 챗봇은 대화의 맥락을

2024년 8월 1일
·
0개의 댓글
·
post-thumbnail

인덱싱 & 임베딩

인덱스란 무엇인가?LlamaIndex 에서 인덱스는 Document 객체(혹은 Node)로 구성된 데이터 구조로, LLM(대형 언어 모델)에 의해 쿼리할 수 있도록 설계되었다. Document vs Node1) Document는 원본 텍스트 데이터를 나타내며, 전체 텍

2024년 7월 30일
·
0개의 댓글
·
post-thumbnail

A survey on large language model (LLM) security and privacy: The Good, The Bad, and The Ugly

LLM이 Security 분야에서 견인력(traction)을 얻고 있다.이 페이퍼는 LLM + Security를 주제로 한 논문들을 종합하여1) The Good : 이로운 LLM 어플리케이션2) The Bad: Offensive LLM 어플리케이션3) The Ugly:

2024년 7월 16일
·
0개의 댓글
·

JWT 토큰기반인증

토큰기반 인증 사용자 인증 확인 방법 1) 서버 기반 인증: ex> 스프링시큐리티의 세션기반인증 2) 토큰 기반 인증: 서버가 토큰을 클라이언트에게 제공, 클라이언트는 이 토큰으로 신청하는 방식 토큰을 전달하고 인증받는 과정 토큰기반 인증의 특징 1) 무상태성 >

2024년 7월 16일
·
0개의 댓글
·

스프링 부트 DB 설계 및 엔티티 작성 방법

ERD 설계 1) 개체와 속성 정의 2) 식별관계 vs 비식별관계 정의 3) 관계 차수(카디널리티) 및 방향정의 4) 최소값 정의 5) IR 모델링 엔티티 작성 1) 전체적인 구조 1) 식별, 비식별 특징 1> 식별 가. 복합키 작성법 2> 비식별 2)

2024년 7월 15일
·
0개의 댓글
·
post-thumbnail

MySQL & 스프링부트 연동

새로운 커넥션을 만든다.데이터 베이스를 만든다.이 설정을 통해 JPA는 애플리케이션이 시작될 때 엔티티 클래스를 기반으로 테이블을 자동으로 생성하거나 업데이트한다. hibernate.ddl-auto 옵션이 update로 설정되어 있으므로, 엔티티 클래스에 정의된 필드와

2024년 7월 14일
·
0개의 댓글
·