CS Study24 [운영체제] segmentation segmentation 이란?프로세스가 할당받은 메모리 공간을 논리적 의미 단위로 나누어 연속되지 않는 물리 메모리 공간에 할당될 수 있도록 하는 메모리 관리 기법입니다. (코드, 데이터, 힙, 스택)같은 기능과 의미 단위로 자주 나눕니다. paging이랑 다르게 크기가 일정하지 않다.https://changbroblog.tistory.com/140 [운영체제] pagingpaging이란?프로세스가 할당받은 메모리 공간을 page단위로 나눠서, 물리 메모리에서 연속되지 않는 서로 다른 위치에 저장하는 메모리 관리 기법입니다. paging을 하려면 프로세스 마다 존재해야changbroblog.tistory.com paging이랑 다르게 외부단편화 일어날 수 있음내부 단편화 x 시작점과 끝점이 담긴 s.. 2024. 10. 15. [운영체제] paging paging이란?프로세스가 할당받은 메모리 공간을 page단위로 나눠서, 물리 메모리에서 연속되지 않는 서로 다른 위치에 저장하는 메모리 관리 기법입니다. paging을 하려면 프로세스 마다 존재해야합니다.page table page num frame num0 1231 944 2 1663 534 페이징을 사용했을때 발생할 수 있는 메모리 단편화란?물리적 메모리 공간이 작은 조각으로 나눠져서 메모리가 충분히 존재함에도 할당이 불가능한 상태입니다.외부적 단편화는 x (메모리가 남는게 적어서 사용 못하는 현상)내부적 단편화는 일어날수 있습니다. (프로세스마다 크기가 .. 2024. 10. 15. [자료구조] BST BST란?이진탐색트리입니다. 어느 노드를 선택하든 해당 노드의 왼쪽 서브트리에는 작은 값들만 있고 오른쪽에는 큰 값만 있는 정렬된 트리입니다. 항상 정렬이 되어있는 트리입니다. 이진트리란?모든 노드의 자식 노드의 갯수가 2개 이하인 트리 조건 - root node의 값보다 작은 값은 왼쪽, 큰 값은 오른쪽- 모든 subtree도 1번을 만족 시간 복잡도평소에 빅오(logn)worst 빅오(n) - 균형이 깨져서 한쪽으로 치우친 이진탐색트리의 경우엔 Linked List와 다를게 없어진다. 2024. 10. 15. [네트워크] 주소창에 주소를 쳤을 때의 과정 1. 사용자가 브라우저에 URL 입력2. 브라우저는 DNS를 통해 서버의 IP주소를 찾음3. 클라이언트에서 HTTP request 메시지 생성 -> TCP/IP 패킷 생성 -> 서버로 전송 (찾은 IP주소로)4. 서버에서 HTTP request에 대한 HTTP response 메시지를 생성 -> TCP/IP 패킷 생성 -> 클라이언트로 전송5. 도착한 HTTP response 메시지는 웹 브라우저에 의해 출력 (랜더링) 2024. 10. 15. [데이터베이스] Index 인덱스가 뭐고 왜 필요한가?인덱스는 table의 검색 성능을 높여주는 대표적인 방법중 하나입니다. 관계형데이터베이스에서는 B+tree 구조로 된 index를 사용하여 검색속도를 향상시킵니다. 인덱스를 생성하게되면 특정 column의 값을 기준으로 정렬하여 데이터의 물리적 위치와 함께 별도 파일에 저장합니다. 인덱스에 저장되는 속성 값을 search-key라고하고 실제 데이터의 물리적 위치를 저장한 값을 pointer라고 합니다. 쉽게말해 인덱스는 특정 열을 search-key 값으로 설정하여 search-key를 기준으로 정렬하여 (search-key, pointer)를 별도 파일에 저장한 것입니다. 인덱스 사용하는 이유인덱스 없이 table에 데이터를 계속 저장하면 순서없이 싸이게 됩니다. 이때 만족하.. 2024. 10. 14. [데이터베이스] DeadLock DeadLock이란??여러 트랜잭션이 각각 자신의 데이터에 대해 lock을 건 상태에서 상대방 데이터에 접근하려고 서로 영원히 기다리는 상태 해결방법은?- 예방기법 -> 트랜잭션 실행전에 트랜잭션이 필요한 모든 데이터를 lock 시키는 방법- 회피기법 -> 자원을 할당할때 타임스탬프 사용하여 데드락이 일어나지 않도록 회피하는 방법- 탐지/회복 기법 -> 데드락이 발생하면 감지하고 회복하는 방법 2024. 10. 14. [데이터베이스] Transaction 데이이터베이스 내에서 수행되는 작업의 최소 단위로 데이터베이스에 저장된 데이터의 일관성과 정확성을 지키는 것입니다. 예를들어 100만원을 송금했는데 오류가나서 상대방이 100만원을 받지 못하는 상황이 벌어지면 안되기 때문에 이 송금과 상대방이 받는 상황을 하나로 묶는것이 트랜잭션입니다. ACID?트랜잭션의 무결성을 유지하기 위해서는 원자성, 일관성, 고립성, 지속성이 필요합니다. 원자성(Atomicity) - 트랜잭션에 포함된 작업은 전부 수행되거나 아니면 전부 수행되지 말아야합니다.일관성(Consistency) - 트랜잭션이 실행을 성공적으로하면 언제나 일관성 있는 데이터베이스 상태로 유지를해야합니다. 송금 전후의 금액 합이 같아야한다라는 예시를 들 수 있겠네요고립성(Isolation) - 트랜잭션은 .. 2024. 10. 14. [네트워크] GET vs POST GET 메소드는 클라이언트가 서버에게 리소스를 요청할때 사용하는 메소드이고 POST는 서버에게 데이터 생성을 요청할때 사용하는 메서드 GET은 캐시 가능 -> 동일한 정보는 브라우저에 저장된 값으로 들고옴 PUT vs PATCH ?PUT은 모든 리소스 수정(없으면 생성), PATCH 는 일부 리소스 수정 2024. 10. 12. 이전 1 2 3 다음