본문 바로가기

기본기

(2)
메모리 단편화란? 단편화는 메모리가 작은 조각으로 나뉘어 사용할 수 없어 비효율적으로 변한 상태를 말한다. 메모리 단편화는 2가지의 종류가 있다 외부 단편화: 할당 된 메모리 블록 사이에 사용되지 않는 메모리의 작은 간격이 있어 새 프로세스에 연속된 큰 메모리 블록을 할당하기 어려울 때 발생합니다. 외부 단편화는 압축 및 페이징과 같은 메모리 할당 기술을 사용하여 줄일 수 있습니다. 압축은 할당된 메모리 블록을 이동하여 인접한 메모리 위치를 차지하고 그 사이에 간격을 두지 않는 것 입니다. 할당된 메모리 블록을 모두 이동해야 하므로 비용이 많이 드는 작업일 수 있지만 외부 조각화를 줄일 수 있습니다. 앞서 언긋했듯이 페이징은 메모리를 고정된 크기의 페이지로 분할하여 외부 조각화를 줄이는 데 도움이 될 수 있습니다. 내부 ..
오버로딩과 오버라이딩의 차이점 객체 지향에서 오버로딩과 오버라이딩은 이름은 비슷하지만 전혀 다른 성능을 지닌다. 오버로딩이란? 오버로딩은 같은 함수의 이름은 동일하지만 다른 메서드를 만들 수 있는 기능입니다. 오버라이딩이란? 오버라이딩은 객체지향에서 클래스의 상속을 받아 다른 메서드로써 기능을 구현하는 자식 클래스의 기능입니다. 상위 클래스에 상속받음으로써 상위 클래스의 메소드 동작을 재정의 하여 사용 할 수 있습니다. C#에서는 override를 통하여 부모의 함수를 재정의 해서 사용합니다.