본문 바로가기
728x90
반응형

분류 전체보기117

[OS] 가상메모리, 페이징, 세그멘테이션, page fault 질문답변 ● 가상 메모리란 무엇인가요? - 실제 존재하는 메모리(4GB)보다 더 큰 가상의 메모리(16GB)처럼 사용한다는 의미. 어떤 프로세스가 실행될 때 메모리에 해당 프로세스 전체가 아닌 일부분만 올라가도 실행이 가능하다는 점에 착안하여 고안되었다. 프로세스 실행에 필요한 일부분만 메모리에 올라가고 나머지는 하드디스크(VMS)에 올라가는 모양. RAM 과 HDD의 병합. - 가상 메모리는 주기억장치(RAM)와 보조기억장치(하드 디스크 등)를 조합하여 물리 메모리보다 큰 주소 공간을 제공하는 기술입니다. 가상 메모리에서는 일부 페이지만 주기억장치에 로드되고, 나머지 페이지는 보조기억장치에 저장되어 있습니다. ● MMU(Memory Management Unit)가 무엇인가요? - 가상주소를 물리주소로 변환해주고.. 2023. 4. 7.
[자구, 알고] 트리, 그래프, 인접행렬, 인접리스트 질문답변 ● Binary Tree (이진 트리) - 자식노드가 최대 두 개인 노드들로 구성된 트리 ● Full Binary Tree (전 이진 트리) - 모든 노드가 0개 혹은 2개의 children 을 가지고 있을 때 - leaf 노드들을 제외한 모든 노드들이 2개의 children 을 가지는 것. ● Complete Binary Tree (완전 이진 트리) - 마지막 level 을 제외한 나머지 level 에 node 들이 가득 차있고, 마지막 level 에서 node 는 가장 왼쪽 부터 채워지는 형태 - 데이터의 크기는 상관하지 않음 ● Perfect Binary Tree (포화 이진 트리) - 모든 internal node 가 두개의 children 을 가지고 있고, 모든 leaf 노드가 같은 level .. 2023. 4. 7.
[자구, 알고] Array, List, LinkedList, heap 질문답변 ● Array vs List 차이점 - Array - 메모리 상에 데이터가 연속적으로 저장 - 사용할 크기를 미리 할당하기 때문에 고정된 크기를 갖는다. 그래서 메모리 낭비가 생길 수도 있다. 10을 할당했는데 데이터를 5개만 넣으면 5가 낭비된다. - 인덱스로 접근할 수 있다. - int[] numArray = {1, 2, 3}; -> numArray[0] 인덱스 접근 가능 - List - 메모리 상에 데이터가 비연속적으로 저장 - 사용할 크기를 미리 할당하지 않아도 된다. 때문에 메모리 낭비가 없다. - 인덱스로 접근할 수 없다. - List numList = List.of(1, 2, 3); -> numList.get(0) 인덱스 접근 불가능 - List는 인터페이스이다. - LinkedList, A.. 2023. 4. 7.
[자구, 알고] 복잡도, 빅오, 스택, 큐 질문답변 ● 시간복잡도와 공간복잡도에 대해 설명해 주세요. - 시간복잡도 : 알고리즘을 수행하는데 시간이 얼마나 걸리는가를 표기하는 것 - 공간복잡도 : 알고리즘을 수행하는데 얼만큼의 공간(그러니까 RAM이나 하드디스크의 메모리 같은 곳)이 필요한가를 표기하는 것 ● 빅오, 빅오메가, 빅세타 - 빅 오(Big-Oh) 표기법 : 최악의 경우 - 빅 오메가(Big-Omega) 표기법 : 최선의 경우 - 빅 세타(Theta) 표기법 : 빅 오와 빅 오메가의 공통부분. 최소와 최악의 중간인 평균적인 복잡도 https://vaert.tistory.com/117 ● 다른 것을 사용하지 않고, Big-O를 사용하는 이유가 있을까요? - 현실에서는 항상 최악의 경우를 생각해야 하기 때문. 빅-오메가나 빅 세타를 이용해서 자원을.. 2023. 4. 7.
[OS] 파일 시스템, i-node, 파일 디스크립터 파일 시스템을 알아보기에 앞서 먼저 이것부터 보겠습니다. "모든 것이 파일이다" 라는 개념입니다. 실제로 리눅스에서는 모든 것을 파일로 보고 있습니다. 리눅스 파일 종류 1. 일반 파일 : 텍스트파일, 실행파일, 이미지파일 등 대부분의 파일 2. 디렉토리 파일 : 디렉토리도 파일로 취급 3. 링크 파일 : 원본파일을 다른 파일명으로 지정한 것으로 윈도우의 바로가기와 같은 개념. 심볼릭 링크, 하드링크가 있음. 4. 장치 파일 : 하드디스크, 마우스, 모니터, 스피커 등과 같은 장치들도 파일로 취급 5. 파이프, 소켓 파일 등등 이처럼 여러가지를 모두 파일로 인식하고 관리합니다. 파일 시스템이란? 파일 시스템은 "운영체제가 파일을 관리하는 방법" 입니다. 파일의 생성, 삭제, 이동, 복사, 검색, 보안 설.. 2023. 4. 3.
728x90
반응형