이 사이트 소개
장래희망 초고수, 조금씩 지식 확장 중
카테고리
- Algorithm (5)
- BOJ(백준) (5)
- Android (9)
- Article 정리 (10)
- Database (1)
- Design Patterns (1)
- Docker (2)
- English (6)
- Git (1)
- Linux (12)
- Memo (4)
- MPEG (1)
- Network (1)
- Operating System (6)
- Programming (19)
- C (5)
- Java (1)
- JavaScript/TypeScript (4)
- Kotlin (7)
- Server (1)
- Software Development (6)
- TDD(Test-driven development) (1)
- Web Development (4)
- Algorithm (5)
-
최신 글
최신 댓글
글쓴이 보관물: namonak
[C] 댕글링 포인터(Dangling Pointer)
댕글링 포인터 정의 포인터가 여전히 해제된 메모리 영역을 가르키고 있다면, 이러한 포인터를 댕글링 포인터(Dangling Pointers)라고 부른다. ⇒ 댕글링 포인터가 가리키는 메모리는 유효하지 않다. 댕글링 포인터는 종종 너무 빠른 해제(premature free)라고 불린다. 댕글링 포인터 문제점 메모리 접근 시 예측 불가능한 동작 … 계속 읽기
카테고리: C, Programming
댓글 남기기
[C] 메모리 누수(Memory Leak)
메모리 누수 정의 메모리 누수는 할당된 메모리가 더는 사용되지 않지만, 해제되지 않을 때 발생한다. 이를 테면 다음과 같은 상황에서 발생한다. 메모리의 주소를 잃어버린 경우 free 함수가 호출되어야 하는 상황에 호출되지 않은 경우 메모리 누수의 예 메모리 누수가 누적되면 힙 관리자가 … 계속 읽기
카테고리: C, Programming
댓글 남기기
[C] 포인터와 메모리
C 프로그램에서의 메모리 컴파일된 C 프로그램은 다음 세 종류의 메모리를 사용한다. 정적(Static)/전역(Global) 정적(Static)/전역(Global)으로 선언된 변수들은 정적/전역 메모리에 할당된다. 정적/전역 변수들은 프로그램이 시작될 때 할당되며, 프로그램이 종료될 때까지 메모리 공간에 남아 있다. 전역 변수는 파일 전체가 접근 범위(scope)이며, 정적 변수의 접근 … 계속 읽기
카테고리: C, Programming
댓글 남기기
[Android] Kotlin을 활용한 android.os.properties 접근
해당 글에서 언급하는 프로퍼티는 안드로이드 시스템에서 관리되는android.os.SystemProperties를 의미합니다. (APK 내부에서 관리되는 System.getProperty, System.setProperty 와는 다릅니다.) 안드로이드 시스템에 시스템 속성(System Property)를 추가하거나 API로 구현하는 방법에 대해서는 아래의 안드로이드 문서에 잘 정리되어 있습니다. 시스템 속성 추가 시스템 속성을 API로 구현 다만, 위에 … 계속 읽기
[Android] ADB를 이용한 파일 복사(adb pull / push)
개요 안드로이드 플랫폼에서 개발시에 MTP 를 통해 파일을 주고 받기 어려운 경우가 있습니다. 이런 경우 ADB pull / push 명령어를 통해 호스트 장치와 안드로이드 장치간 파일을 공유할 수 있습니다. ADB 디버깅 설정 ADB를 사용하기 위해서는 안드로이드 장치에서 USB 디버깅 옵션이 … 계속 읽기
[Docker] Volume에 대한 이해와 활용
이 글에서는 Docker Volume에 대해서 설명하고 상황에 따라 Volume을 활용해 데이터를 관리하는 방법에 대해서 기술합니다. 개요 가장 기본적으로 Docker Container가 생성되면 Writable Layer에 데이터를 저장할 수 있습니다. 그런데 이 방법에는 몇가지 문제가 있습니다. Container가 삭제되면 Container 내부에 데이터도 같이 삭제가 … 계속 읽기
[macOS, Big Sur] VirtualBox Kernel driver not installed (rc=-1908) 해결
macOS Big Sur 에서 Virtual Box를 이용해 Ubuntu 16.04 LTS를 설치하는 중에 다음과 같은 에러가 발생하였습니다. Kernel driver not installed (rc=-1908) Make sure the kernel module has been loaded successfully. where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) – The support driver … 계속 읽기
[Android] Layout Mechanism 정리
View가 그려지는 과정 안드로이드의 View 들은 계층구조로 구성됩니다. 먼저 Activity가 포커스를 얻게되면 안드로이드 시스템은 Activity에게 루트 노드를 요청합니다. 보통 루트 노드는 MainActivity 클래스의 onCreate()메소드 내부에서 setContentView()메소드를 통해 지정되거나, XML 레이아웃의 최상위 레이아웃이 지정됩니다. 아래의 그림에서 좌측은 레이아웃 XML로 작성된 View … 계속 읽기
[Ubuntu 16.04] VIM 8.2 설치
보통은 Ubuntu 16.04 LTS 에서 apt-get을 이용해 VIM을 설치하면 7.4 버전으로 설치됩니다. VIM에서 YCM 등의 플러그인을 사용하기 위해서는 8.1 이상이 설치되어야 합니다. 다음과 같은 커맨드를 입력하여 VIM 8.2를 설치합니다.
|
1 2 3 |
sudo add-apt-repository ppa:jonathonf/vim sudo apt update sudo apt install vim |
삭제하는 경우 아래와 같은 커맨드를 입력합니다.
|
1 2 |
sudo apt remove vim sudo add-apt-repository --remove ppa:jonathonf/vim |
[Android] TV 레이아웃 구성
Contents1 Layout 구성 예제1.1 Leanback 라이브러리를 활용한 레이아웃 구성1.1.1 프로젝트 생성1.1.2 TV 어플리케이션을 위한 manifest 수정1.1.3 Layout 리소스 생성1.1.4 레이아웃(ViewGroup)에 View 추가1.1.5 MainActivity 클래스 추가 및 기본 구현1.2 에뮬레이터 실행2 Reference Layout 구성 예제 이번 포스트에서는 Android Studio 에서 실제 TV … 계속 읽기