본문 바로가기

CS(ComputerScience)

(29)
가상 메모리 가상 메모리 메인 메모리를 추상화 한것. 가상메모리에서 지원하는 포로세서는 가상주소지정이라고 하는 간접화의 형태로 메인 메모리를 참조. 🔎 가상 메모리 기능 자동으로 최근에 사용한 디스크상의 가상 주소공간의 내용을 메인 메모리로 캐시한다. 메모리 관리를 단순화해주고 링킹, 프로세스들 간의 데이터 공유, 프로세스를 위한 메모리 할당, 프로그램 로딩을 단순화 해준다. 매 페이지 테이블 엔트리 내 보호 비트를 사용해 메모리 보호를 단순화해준다. 📌 폰 노이만 구조 메모리는 프로그램과 데이터를 구분없이 저장한다. 메모리는 속도보다는 용량을 중시.. 메모리 cache 속도 DRAM SRAM DRAM >SRAM 비용 집적도 속도만 고려하면 DRAM보다 SRAM을 고름. 비용만 고려하면 SRA..
Memory allocation using explicit free block tracking and first-fit method Memory allocation using explicit free block tracking and first-fit method LIFO 방식 + first fit 🔎 explicit memory 요소 저장하기 명시적으로 메모리 공간 할당 이용 자료구조 : Array(주소할당시 사용), Linked List(연결 리스트) 새로운 가용블록 LIFO 순으로 유지. 지금 구현한 first fit의 반환은 선형시간에 수행된다. 갸용블록이 분산되어 있지 않고 최근에 해제된 블록이 자주 재할당 될 때 적합. 장점 검색속도가 빠르고 메모리 할당, 해제 쉬움 최근에 해제된 블록이 다시 할당될 가능성이 높기 때문에 메모리를 더 잘 활용할 수 있다. 단점 내부단편화 발생 가용 블록을 검색할 때 매전 전체 리스트를 순회..
Memory allocation using implicit free block tracking and best-fit method Memory allocation using implicit free block tracking and best-fit method ✏️ Best Fit이란? heap의 처음부터 끝까지 모든 block 리스트를 탐색하면서 가장 padding이 적은 block를 찾아 그 곳에 data할당하는 방식 장점 최대한 남는 공간이 적게 memory를 할당하므로 외부단편화를 줄일 수 있다. 작은 메모리 블록이 많이 사용될 때 first fit보다 효율적이다. 단점 블록을 찾는 과정에서 시간이 많이 소요된다. 할당 가능한 블록을 찾는 과정이 복잡하고 비용이 많이 발생할 수 있다. 대부분의 경우 first fit보다 느리고 성능이 안좋다. best fit이 남긴 작은 내부 단편화는 시간이 지날 수록 증가한다. Best f..
Memory allocation using implicit free block tracking and next-fit method Memory allocation using implicit free block tracking and next-fit method ✏️Next fit 이란? 검색을 시작하는 위치를 이전에 할당한 메모리 블록의 다음 블록으로 설정해 검색 시간을 최적화 할 수 있다. 장점 : first fit 이후 block만 탐색하면 되니 탐색 범위가 줄어들어 first fit보다 성증이 더 좋을 가능성이 높다. 단점 : 탐색 범위가 너무 작아 제한된 경우, 이전 블록과 연결된 빈공간을 발견하지 못해 fragmentation(단편화) 문제가 발생할 확률이 높다. 즉, 최적의 메모리 사용이 아닐 수 있다. next fit은 할당 요청이 빈벌할 경우 성능이 저하되는 문제가 있다. 2023.04.10 - [CS(Computer..
Memory allocation using implicit free block tracking and first-fit method Memory allocation using implicit free block tracking and first-fit method 2023.04.12 - [CS(ComputerScience)] - 묵시적 가용 리스트 Implicit Free List✏️ First Fit 이란?리스트의 처음부터 검색해 크기가 맞는 첫번째 가용 블록을 선택 장점 리스트의 마지막에 가장 큰 가용블록을 남겨두는 경향이 있다. 단점 리스트의 앞부분에 작은 가용블록들을 남겨두는 경향이 있어서 큰 블록을 찾는 경우 검색시간이 늘어난다. block size & alloc/* Paxk a size and allocated bit into a word */ // size는 블록의 크기 정보를 저장 // alloc은 블록의 할당 여부(0..
RESTful API RESTful API API Application Programming Interface 응용 프로그램 간 데이터를 주고 받는 방식 Open API 데이터, 정보, 서비스 등을 누구나 사용할 수 있도록 공개된 API를 말합니다. 📌 장점 빠르고 유연한 비지니스 구축 비지니스 품질 향상 생태계 확립 적은 비용 빠른 시스템 도입 비지니스 품질 향앗 📌 단점 정보 부족(웹에 적용하기 부족한 부분) 정확성이 낮을 수 있음 📌 자원이란? 해당 소프트웨어가 관리하는 문서, 그림, 데이터, 해당 소프트웨어 자체 모든 것. 📌 표현이란? 그 자원을 표현하기 위한 이름 예를 들어, DB 학생 정보(students) 📌 상태전달이란? 데이터가 요청되는 시점에 자원의 상태로 JSON 또는 XML REST Representa..
HTTP, HTTPS HTTP, HTTPS IP주소란? Internet Protocol Address 인터넷에 연결되어 있는 모든 장치들(컴퓨터, 서버 장비, 스마트폰 등)을 식별할 수 있는 고유 주소 인터넷에 연결된 모든 컴퓨터는 IP를 갖는다. 📌 IPv4와 IPv6 구분 IPv4 IPv6 주소 길이 32bit 128bit 표시 방법 4개 부분에 8bit씩 10진수로 표시 ex) 202.30.64.22 8개 부분에 16bit씩 16진수로 표시 ex) 2001:0203:abcd:ffff:0000:0000 주소 개수 256*256*256*256 = 약 43억개 약 43억*43억*43억*43억개 DNS Domain Name System 도메인 네임은 IP 주소를 사람들이 이해하기 쉽게 문자로 표현한 것. 📌 PORT 운영 체제..
프로세스, 스레드, 비동기 프로세스, 스레드, 비동기 프로세스와 스레드는 운영체제(OS, Operating System)에서 배우는 개념으로 CPU가 일할 거리를 제공해주는 역할! HDD 하드 디스크 RAM 메모리(CPU가 일할 수 있도록 프로세스를 적재시키는 책상) 프로세스에 대한 정보를 CPU의 Register가 저장하면서 사용. 그 뒤에 비우고 다시 다른 프로세스 메모리 가져와서 사용~ OS가 HDD에서 적재할 부분 가져다가 RAM에다가 CPU가 일할 수 있도록 적재시켜줌! OS 📌 프로세스(Process) 메모리에 적재되어 실행되고 있는 프로그램의 인스턴스 운영체제로부터 시스템 자원을 할당받은 작업의 단위 📌 인스턴스란? 설계된 것을 바탕으로 구현된 구체적인 실체로 붕어빵 틀(설계된 것, 클래스) 붕어빵(인스턴스) 프로세스..
CPU CPU 중앙 처리 장치, Central Processing Unit 연산을 위해 만들어진 수많은 트랜지스터의 집합체로, 컴퓨터에서 뇌의 역할을 합니다. N개의 register(State)로 이루어진 코어, 그 코어가 N개 있는 상태(듀얼 코어, 쿼드 코어) 연상과 제어를 관장하기에 CPU성능 = PC 속도와 성능 왜냐하면, 메모리 & 디스크와 같은 저장매체에도 영향을 미치기 때문! CPU는 RAM과 소통하며 데이터를 저장하고 받아옴. 왜 싱글 코어에서 멀티 코어로 변경하였는가? 싱글 코어의 성능을 계속 올리는데 한계가 있어요. 고도화될 만큼 고도화된 CPU 자체가 소비하는 전력 소모와 그로 인한 발열 문제가 있기 때문! 또한, 클럭 수 증가 대비 싱글 코어 처리 작업량이 크지 않음. 이러한 한계로 인해 ..