JIT 컴파일러를 공부하다보니, AOT 컴파일러 또한 공부를 해보려 합니다. AOT 컴파일러란?AOT(Ahead-Of-Time) 컴파일러는 프로그램 실행 전에,소스 코드나 중간 코드(바이트코드)를 미리 기계어로 컴파일하는 방식입니다.즉, 실행 전에 컴파일을 모두 완료하므로, 실행 시점에서는 번역 없이 바로 실행 가능한 상태가 됩니다.AOT 컴파일러의 동작 과정소스 코드 작성:개발자가 작성한 고급 언어 코드(C, C++, Java 등)를 작성합니다.AOT 컴파일:소스 코드를 특정 플랫폼의 기계어로 변환하여 실행 가능한 바이너리 파일을 생성합니다.예: .exe, .elf, .bin 같은 파일.실행:컴파일된 바이너리 파일은 직접 운영체제와 하드웨어에서 실행됩니다.AOT 컴파일러의 장단점장점:빠른 실행 속도:이..
Computer Science
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbvg7UM%2FbtsJapbXJBC%2F8gxITX1IPlWDnJxI3fxHck%2Fimg.png)
1. SSL/TLS 개요SSL의 등장 배경 인터넷이 보편화되면서 웹 브라우저와 서버 간의 정보 교환이 증가하게 되었고, 이러한 통신의 보안 문제가 중요하게 대두되었습니다. 처음에는 모든 데이터가 평문(Plain Text)로 전송되었기 때문에 중간에서 누군가가 데이터를 가로채면 쉽게 읽을 수 있었습니다.이를 해결하기 위해 Netscape가 SSL을 개발하게 되었습니다. TLS로의 진화SSL 3.0 이후에 발생한 여러 가지 취약점으로 인해 SSL 프로토콜의 한계가 드러나기 시작했습니다. 이를 해결하기 위해 SSL의 후속 버전인 TLS가 등장했습니다. TLS는 SSL의 개선된 버전으로, 더 강력한 보안 기능과 다양한 개선사항을 포함하고 있습니다. 2. SSL/TLS의 필요성데이터 보안 : SSL/TLS는 데이..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc8r2os%2FbtsI6LLc0h9%2FuFHjVu5EbueWLIAc1Bjw31%2Fimg.png)
Stack과 Heap은 컴퓨터 프로그램이 실행될 때 메모리를 관리하는 두 가지 주요 메모리 영역입니다. Stack 메모리Stack은 함수 호출, 지역 변수, 매개변수, 그리고 함수의 반환 주소 등을 저장하는 데 사용되는 메모리 영역입니다. 이 영역은 고정된 크기로 할당되며, 함수 호출이 일어날 때마다 새로운 메모리 블록(스택 프레임)이 생성됩니다. 스택의 작동원리와 특징LIFO(Last In, First Out)Stack은 후입선출 방식으로 동작합니다. 마지막에 들어간 데이터가 가장 먼저 나옵니다. 함수가 호출되면 해당 함수의 매개변수, 지역 변수, 반환 주소 등이 스택에 푸시(push)되고, 함수가 종료되면 이 정보들이 팝(pop)되며 스택에서 제거됩니다. 스택 프레임각 함수 호출은 스택에 스택 프레임..