5줄 요약

  • SRAM은 Static Random Access Memory의 약자로, 컴퓨터나 디지털 장치에서 메모리로 사용되는 반도체 기억장치입니다.
  • SRAM은 비교적 빠른 속도와 저전력 소모를 특징으로 합니다.
  • SRAM은 DRAM과는 달리 전기가 인가된 동안에만 데이터를 유지하기 때문에 주기적인 데이터 재충전이 필요하지 않습니다.
  • SRAM은 작은 용량의 메모리에 주로 사용되며, 빠른 속도와 낮은 전력 소모로 인해 캐시 메모리 등에서 많이 사용됩니다.
  • SRAM은 CPU나 GPU 등의 고성능 디바이스에서 중요한 역할을 수행하며, 속도와 신뢰성이 요구되는 분야에서 널리 사용됩니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • DRAM은 Dynamic Random Access Memory의 약자로, 컴퓨터에서 주기억장치로 사용되는 반도체 메모리입니다.
  • DRAM은 충전된 전하를 저장하여 정보를 보관하는데, 이는 비휘발성 메모리인 SSD와는 다릅니다.
  • DRAM은 접근 속도가 빠르지만, 정보를 보존하는 방식 때문에 주기적으로 충전을 해줘야 하며, 이를 리프레시라고 합니다.
  • DRAM은 용량을 확장하기 쉽고, 대용량의 메모리를 구성하는데에도 효율적으로 사용됩니다.
  • DRAM은 컴퓨터 시스템의 성능에 큰 영향을 미치며, 최신 기술의 DRAM은 저전력, 고속 처리, 저지연성 등의 특징을 가지고 있습니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • RAM은 "Random Access Memory"의 약자로 컴퓨터가 프로그램을 실행하는 동안 일시적으로 필요한 데이터와 명령어를 저장하는 메모리입니다.
  • RAM은 읽기/쓰기가 가능하며, 데이터가 전원이 꺼지면 모든 내용이 삭제됩니다.
  • RAM의 용량이 클수록 한 번에 더 많은 데이터를 저장할 수 있고, 더 많은 프로그램을 동시에 실행할 수 있습니다.
  • RAM은 CPU와 함께 동작하여 컴퓨터의 속도와 성능에 큰 영향을 미칩니다.
  • 일반적으로, 램의 용량이 클수록 컴퓨터의 속도가 빨라지며, 작업을 더 빠르게 처리할 수 있습니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • EPROM은 "Erasable Programmable Read-Only Memory"의 약어로, 컴퓨터의 비휘발성 메모리 종류 중 하나입니다.
  • EPROM은 데이터를 저장하고 읽을 수 있으며, 프로그램 코드나 시스템 설정값 등을 저장하는 데에 주로 사용됩니다.
  • EPROM은 UV 광선으로 지워지고 다시 프로그래밍될 수 있습니다.
  • EPROM은 보통 칩 형태로 제공되며, 칩 내부에는 일련의 메모리 셀이 있습니다.
  • EPROM은 현재는 EEPROM, 플래시 메모리 등으로 대체되었으나, 일부 장치에서는 여전히 사용됩니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • 컴퓨터의 메모리 구조는 크게 레지스터, 캐시, 주 기억장치, 보조 기억장치로 나뉘어 집니다.
  • 레지스터(Register)는 CPU 내부에 위치하며, 프로그램 실행 시 필요한 데이터를 일시적으로 저장하는 데 사용됩니다.
  • 캐시(Cache)는 CPU와 주 기억장치 사이에 위치하며, CPU가 필요로 하는 데이터를 빠르게 읽을 수 있도록 합니다.
  • 주 기억장치(Main memory)는 프로그램 실행 중 필요한 데이터와 명령어를 저장하는 데 사용됩니다.
  • 보조 기억장치(Auxiliary storage)는 하드 디스크, SSD, USB 드라이브 등을 포함한 대용량 데이터를 저장하는 저장 장치를 말합니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • 컴퓨터의 메모리는 데이터를 저장하고 읽고 쓰는 데 사용되는 주요 자원으로, 컴퓨터 시스템 내부에 위치합니다.
  • 메모리는 크게 프로그램 코드를 저장하는 ROM(Read-Only Memory)과, 프로그램 실행 중에 사용되는 데이터를 저장하는 RAM(Random Access Memory)입니다.
  • ROM은 주로 펌웨어(Firmware)나 부트로더(Bootloader)와 같은 코드를 저장하는 데 사용되며, 읽기 전용이므로 프로그램 실행 중에는 쓰일 수 없습니다.
  • 반면에, RAM은 프로그램 실행 중에 동적으로 할당되는 데이터를 저장하는 데 사용됩니다.
  • 예를 들어, 프로그램에서 변수를 선언하면 해당 변수는 RAM에 저장됩니다.

추가 내용

경험

  • 대학교에서 처음에 배울 때 있던 책에서 본 기억이 납니다.

블로그 이미지

RIsN

,

5줄 요약

    1. 메모리 누수(Memory Leak) 방지: 사용하지 않는 메모리를 해제하지 않으면 시스템 메모리에 누적되어 시스템 성능을 저하시키므로, 메모리 누수를 방지하는 것이 중요합니다.
    2. 메모리 캐싱: 반복적으로 사용되는 데이터를 캐시에 저장하여 메모리 접근 시간을 줄이고 성능을 향상시킵니다.
    3. 메모리 프리페칭(Memory Prefetching): 미리 필요한 데이터를 미리 메모리에 로드하여 프로그램 실행 시간을 줄입니다.
    4. 메모리 압축(Memory Compression): 사용하지 않는 메모리를 압축하여 메모리 용량을 줄이고 시스템 성능을 향상시킵니다.
    5. 메모리 구조 개선: 메모리 구조를 최적화하여 메모리 접근 시간을 줄이는 것도 메모리 최적화에 중요한 요소 중 하나입니다.

추가 내용

경험

  • 면접에서 제대로 대답하지 못했습니다.

블로그 이미지

RIsN

,

5줄 요약

  • 메모리 누수(memory leak)는 프로그램에서 동적으로 할당한 메모리를 프로그램이 더 이상 사용하지 않으면서도 할당된 메모리를 해제하지 않아 발생하는 문제입니다.
  • 즉, 프로그램이 사용하지 않는 메모리가 계속해서 쌓이는 현상을 의미합니다.
  • 예를 들어, 동적으로 할당한 메모리를 해제하지 않거나, 메모리를 여러 번 할당하고 해제하지 않는 경우에 발생할 수 있습니다.
  • 또한, 메모리를 할당한 후에 해당 메모리에 대한 포인터를 잃어버리는 경우에도 메모리 누수가 발생합니다.
  • 메모리 누수는 메모리 사용량이 계속해서 증가하면서, 시스템의 성능을 저하시키고, 시스템이 충돌하는 원인이 될 수 있습니다.

추가 내용

경험

블로그 이미지

RIsN

,

5줄 요약

  • 힙(Heap)은 프로그램이 실행되는 동안 사용되는 동적 메모리 영역입니다.
  • 프로그램이 실행되면, 힙 메모리는 운영체제로부터 할당받아 사용됩니다.
  • 힙 메모리는 스택과 달리 크기가 가변적이며, 사용자가 필요에 따라 메모리를 동적으로 할당하고 해제할 수 있습니다.
  • 힙 메모리는 보통 전역 변수나 정적 변수와 같이 프로그램의 실행 중에 유지되는 데이터를 저장하기 위해 사용됩니다.
  • 힙 메모리는 스택과 달리 크기가 가변적이므로, 메모리 누수(memory leak)와 같은 문제가 발생할 수 있습니다.

추가 내용

  • 힙 메모리는 대개 malloc(), calloc(), realloc()과 같은 라이브러리 함수를 사용하여 할당하고, free() 함수를 사용하여 해제합니다. 이러한 함수들은 운영체제로부터 힙 메모리를 할당받아 프로그램에서 사용할 수 있도록 해줍니다.
  • 프로그래머는 메모리를 동적으로 할당할 때, 반드시 할당된 메모리를 해제해야 합니다. 이를 위해서는, 메모리 할당과 해제를 일관성 있게 관리하는 것이 중요합니다.
  • 또한, 힙 메모리는 동적 데이터 구조를 구현하기 위해 사용됩니다. 예를 들어, 리스트, 트리, 그래프 등의 데이터 구조를 힙 메모리를 사용하여 동적으로 할당하고 관리할 수 있습니다.

경험

  • 면접에서 관련해서 물어봤는데 대답하지 못했습니다.

블로그 이미지

RIsN

,

5줄 요약

  • 스택 오버플로우(Stack Overflow)는 스택에 저장할 수 있는 데이터의 양을 초과하여 데이터를 삽입하려고 할 때 발생하는 오류입니다.
  • 스택은 한정된 크기의 메모리 영역을 사용하므로, 스택에 쌓인 데이터가 일정 크기를 초과하면 스택 오버플로우가 발생합니다.
  • 스택 오버플로우는 일반적으로 프로그래밍 실수로 인해 발생하거나 또는 버퍼 오버런(Buffer overrun)과 같은 보안 취약점으로 인해 스택 오버플로우가 발생할 수도 있습니다.
  • 스택 오버플로우가 발생하면, 시스템은 일반적으로 프로그램을 강제 종료시키거나 예기치 않은 동작을 수행하게 됩니다.
  • 스택 오버플로우를 방지하기 위해서는, 스택의 크기를 적절히 조절하거나, 재귀 함수 등에서 무한히 호출되지 않도록 적절한 조치를 취해야 합니다.

추가 내용

경험

  • 없음

블로그 이미지

RIsN

,