본문 바로가기 메뉴 바로가기

JH-Labs

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

JH-Labs

검색하기 폼
  • 분류 전체보기 (119)
    • [ DevOps ] (35)
      • [ CI-CD ] (9)
      • [ k8s ] (20)
      • [ SRE ] (0)
      • [ Golang ] (6)
      • [ 아키텍처 ] (0)
    • [ 자격증 ] (7)
      • [ LFCS ] (4)
      • [ CCNA ] (0)
      • [ AWS ] (2)
      • [ CKA ] (1)
    • [ AI 활용 ] (0)
    • [ Basic ] (30)
      • # OS (6)
      • # 네트워크 (6)
      • # 데이터베이스 (11)
      • # 알고리즘 (7)
    • [ 백엔드 개발 ] (36)
      • [ Spring ] (18)
      • [ Java,Kotlin ] (18)
    • [ 트랜드 ] (2)
    • [ 트러블슈팅-개선 ] (5)
    • [ 생각정리 ] (2)
    • [ 맛보기 ] (2)
      • [ Kafka ] (2)
      • [ Redis ] (0)
  • 방명록

class loader (1)
[java] 자바 실행 과정 deep dive

자바는 OS와 독립적으로 실행시킬 수 있다. 그 이유는 JVM이 OS에 의존적이기 때문인데, 즉, OS마다 다른 JVM이 존재하기 때문이다. C/C++는 링커, 로더를 포함한 운영체제 바로 위에서 직접적으로 실행되므로, 빠르고 가볍다. 하지만 개발에 있어서 그만큼 메모리 회수 등 개발자가 신경써야 할 부분이 많다. 또한 C/C++ 등의 전통적인 언어는 컴파일 플랫폼(CPU 아키텍처 16bit, 64bit 등 및 OS)에 따라 자료형형의 크기가 변한다. 그래서 윈도우에서 컴파일한 C/C++파일은 리눅스에서 안 돌갈 수도 있다.  JVM은 이러한 문제를 근본적으로 해결한다. 자바 소스코드(.java)가 자바 컴파일러(javac.exe)를 거치고 나면, 자바 바이트코드(.class)를 생성하는데, 이 자바 바..

[ 백엔드 개발 ]/[ Java,Kotlin ] 2021. 8. 24. 18:49
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • GitHub
  • LinkedIn
TAG
  • argocd
  • Linux
  • RDB
  • Stream
  • LFCS
  • kafka
  • spring
  • go
  • Non-Blocking
  • 코틀린
  • db
  • Controller
  • K8s
  • container
  • CICD
  • GitOps
  • helm
  • 카프카
  • github actions
  • Java
  • jvm
  • 우분투
  • rolling update
  • docker
  • golang
  • 쿠버네티스
  • ubuntu
  • 컨트롤러
  • ci/cd
  • Kubernetes
more
«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바