본문 바로가기

전체 글26

메모리 구조 메모리 구조에 대해서 이해한다. 메모리의 구조 메모리 구조는 Code, Data, Stack, Heap 영역으로 나눠져 있다. Code 영역에는 프로그램의 코드가 저장되는 영역으로 텍스트 영역이라고도 한다. Data 영역에는 전역 변수와 정적 변수가 저장되는 영역 Stack 영역은 함수의 호출과 함께 지역 변수와 매개 변수, 반환 주소 값이 저장되는 영역(void add(int a, int b) { int num;}) Heap 영역은 사용자가 직접적으로 관리할 수 있는 영역 Stack 높은 주소 값에서 낮은 주소 값으로 할당된다. 함수의 호출과 함께 지역변수와 매개 변수, 반환 주소 값이 저장되고 함수가 종료되면 마찬가지로 지역변수와 매개변수는 소멸된다. 더 이상 할당할 수 없을 경우에는 Stack ov.. 2022. 7. 3.
가비지 컬렉션(Garbage Collection, GC) 가비지 컬렉션을 이해한다. 가비지 컬렉션 Managed Heap에서 더 이상 사용하고 있지 않는 객체들을 삭제하는 프로세스를 가비지 컬렉션이라고 한다. Heap 영역에 있는 객체(Object)들은 Method Area, Stack, Heap 내의 다른 객체들에 의해서 참조가 될 수가 있다. 참조가 되고 있는 객체들을 Reachable 객체라고하며 반대는 Unreachable 객체라고 한다. 객체가 Reachable, Unreachable 객체인지 판단할 수 있는 방법은 GC가 GC root에서부터 시작해서 하나씩 참조하고 있는 객체들을 조사하여서 판단할 수 있다. GC는 동작 순서가 있는데 Mark, Sweep, Compact가 있다. Mark : GC가 객체들을 조사하여 Reachable, Unreac.. 2022. 7. 2.
[OS] 프로세스, 쓰레 Goal 프로세스와 쓰레드를 이해한다. 프로세스(Process) 운영체제로부터 할당받은 하나의 단위 메모리 영역에서 실행되고 있는 프로그램의 인스턴스 프로세스에는 Code, Data, Stack, Heap 영역이 존재한다. 프로세스에는 최소 한 개 이상의 쓰레드가 존재한다. 다른 프로세스의 데이터에 접근할 수 없다. 쓰레드(Thread) 프로세스내에서 실행되는 단위를 나타낸다 프로세스내에 쓰레드는 여러 개가 존재할 수 있다. 쓰레드에는 오직 Stack 영역이 할당되고 다른 쓰레드와 프로세스 내의 다른 자원들을 공유할 수 있다. 멀티 프로세스와 멀티 쓰레드 멀티 프로세스란 하나의 응용 프로그램을 실행할 때 여러 개의 프로세스가 하나의 작업을 처리하는 방식이다. 장점 한 개의 프로세스에 오류가 발생해도 프로.. 2022. 7. 1.
[TextMeshPro] 텍스트 메쉬 프로 Character 애니메이션 텍스트 메쉬 프로 예제 씬을 확인하면서 텍스트로 애니메이션을 활용할 수 있겠다는 생각이 들어서 캐릭터 애니메이션을 구현 애니메이션 구현할 때 Vertex 값을 조정해야함 중심점을 계속해서 업데이트해줘야함 TextMeshProUGUI, TextMeshPro 보다는 TMP_TEXT를 사용하기 텍스트 전체의 컬러값을 조절하고 싶은 경우에는 VertexColor를 사용하기 UI와 3d에서 이벤트 핸들러 처리법이 조금 다르기 떄문에 확인 소스코드는 아래 깃에서 확인가능합니다. https://github.com/Jeonhyeongwoo1/TextMeshPro 2021. 11. 20.