JDK vs JRE vs JVM: முக்கிய வேறுபாடுகள்

ஜே.டி.கே என்றால் என்ன?

JDK என்பது ஆப்லெட்டுகள் மற்றும் ஜாவா பயன்பாடுகளை உருவாக்க பயன்படும் ஒரு மென்பொருள் மேம்பாட்டு சூழலாகும். JDK இன் முழு வடிவம் ஜாவா டெவலப்மென்ட் கிட். ஜாவா டெவலப்பர்கள் இதை விண்டோஸ், மேகோஸ், சோலாரிஸ் மற்றும் லினக்ஸில் பயன்படுத்தலாம். JDK அவர்களுக்கு ஜாவா நிரல்களை குறியிடவும் இயக்கவும் உதவுகிறது. ஒரே கணினியில் ஒன்றுக்கு மேற்பட்ட JDK பதிப்புகளை நிறுவ முடியும்.

இந்த டுடோரியலில், நீங்கள் கற்றுக்கொள்வீர்கள்:

ஜேஆர்இ என்றால் என்ன?

JRE என்பது மற்ற மென்பொருட்களை இயக்கும் வகையில் வடிவமைக்கப்பட்ட ஒரு மென்பொருளாகும். இது வகுப்பு நூலகங்கள், ஏற்றி வகுப்பு மற்றும் JVM ஆகியவற்றைக் கொண்டுள்ளது. எளிமையாகச் சொன்னால், நீங்கள் ஜாவா நிரலை இயக்க விரும்பினால் உங்களுக்கு JRE தேவை. நீங்கள் ஒரு புரோகிராமர் இல்லையென்றால், நீங்கள் JDK ஐ நிறுவ தேவையில்லை, ஆனால் Java நிரல்களை இயக்க JRE. இருப்பினும், அனைத்து JDK பதிப்புகளும் ஜாவா இயக்க நேர சூழலுடன் தொகுக்கப்பட்டுள்ளன, எனவே நீங்கள் உங்கள் கணினியில் JRE ஐ தனித்தனியாக பதிவிறக்கி நிறுவ வேண்டியதில்லை. JRE இன் முழு வடிவம் ஜாவா இயக்க நேர சூழல்.

ஜேவிஎம் என்றால் என்ன?

JVM என்பது ஜாவா கோட் அல்லது அப்ளிகேஷன்களை இயக்க ரன் டைம் சூழலை வழங்கும் ஒரு இயந்திரம். இது ஜாவா பைட்கோடை இயந்திர மொழியாக மாற்றுகிறது. JVM என்பது ஜாவா ரன் சூழலின் (JRE) ஒரு பகுதியாகும். இதை தனித்தனியாக பதிவிறக்கம் செய்து நிறுவ முடியாது. JVM ஐ நிறுவ, நீங்கள் JRE ஐ நிறுவ வேண்டும். JVM இன் முழு வடிவம் ஜாவா மெய்நிகர் இயந்திரம்.

பல நிரலாக்க மொழிகளில், தொகுப்பி ஒரு குறிப்பிட்ட அமைப்புக்கான இயந்திரக் குறியீட்டை உருவாக்குகிறது. இருப்பினும், ஜாவா கம்பைலர் ஒரு மெய்நிகர் இயந்திரத்திற்கான குறியீட்டை உருவாக்குகிறது, இது JVM என அழைக்கப்படுகிறது.

முக்கிய வேறுபாடுகள்

  • JDK என்பது ஒரு மென்பொருள் மேம்பாட்டு கிட் ஆகும், அதேசமயம் JRE என்பது ஜாவா நிரலை இயக்க அனுமதிக்கும் ஒரு மென்பொருள் தொகுப்பாகும், அதேசமயம் JVM பைட்கோடை செயல்படுத்துவதற்கான சூழலாகும்.
  • JDK இன் முழு வடிவம் ஜாவா டெவலப்மென்ட் கிட் ஆகும், அதே நேரத்தில் JRE இன் முழு வடிவம் ஜாவா இயக்க நேர சூழல் ஆகும், அதே நேரத்தில் JVM இன் முழு வடிவம் Java Virtual Machine ஆகும்.
  • JDK மேடையை சார்ந்தது, JRE மேடையும் சார்ந்தது, ஆனால் JVM மேடையில் சுயாதீனமானது.
  • JDK யில் மேம்பாடு, பிழைத்திருத்தம் போன்றவற்றுக்கான கருவிகள் உள்ளன.
  • JDK நிறுவியுடன் வருகிறது, மறுபுறம், JRE ஆனது மூல குறியீட்டைச் செயல்படுத்துவதற்கான சூழலை மட்டுமே கொண்டுள்ளது, அதே நேரத்தில் JVM மென்பொருள் JDK மற்றும் JRE இரண்டிலும் தொகுக்கப்பட்டுள்ளது.

JDK ஐ ஏன் பயன்படுத்த வேண்டும்?

JDK ஐப் பயன்படுத்துவதற்கான முக்கிய காரணங்கள் இங்கே:

  • JDK யில் ஜாவா புரோகிராம்களை எழுத தேவையான கருவிகள் உள்ளன, மற்றும் JRE அவற்றை இயக்கவும்.
  • இது ஒரு கம்பைலர், ஜாவா அப்ளிகேஷன் லாஞ்சர், ஆப்லெட்வியூவர் போன்றவற்றை உள்ளடக்கியது.
  • கம்பைலர் ஜாவாவில் எழுதப்பட்ட குறியீட்டை பைட் குறியீடாக மாற்றுகிறது.
  • ஜாவா அப்ளிகேஷன் லாஞ்சர் ஒரு JRE ஐத் திறந்து, தேவையான வகுப்பை ஏற்றுகிறது மற்றும் அதன் முக்கிய முறையை செயல்படுத்துகிறது.

ஏன் JRE பயன்படுத்த வேண்டும்?

JRE ஐப் பயன்படுத்துவதற்கான முக்கிய காரணங்கள் இங்கே:

  • JRE வகுப்பு நூலகங்கள், JVM மற்றும் பிற துணை கோப்புகளை கொண்டுள்ளது. பிழைதிருத்தம், கம்பைலர் போன்ற ஜாவா வளர்ச்சிக்கான எந்த கருவியும் இதில் இல்லை.
  • இது கணிதம், ஸ்விங்கெட்சி, பயன்பாடு, லாங், அவ்ட் மற்றும் இயக்க நேர நூலகங்கள் போன்ற முக்கியமான தொகுப்பு வகுப்புகளைப் பயன்படுத்துகிறது.
  • நீங்கள் ஜாவா ஆப்லெட்களை இயக்க வேண்டும் என்றால், உங்கள் கணினியில் JRE நிறுவப்பட வேண்டும்.

ஏன் JVM?

JVM ஐப் பயன்படுத்துவதற்கான முக்கிய காரணங்கள் இங்கே:

  • JVM ஜாவா மூலக் குறியீட்டை இயக்குவதற்கான ஒரு இயங்குதள-சுயாதீனமான வழியை வழங்குகிறது.
  • இது ஏராளமான நூலகங்கள், கருவிகள் மற்றும் கட்டமைப்புகளைக் கொண்டுள்ளது.
  • நீங்கள் ஜாவா நிரலை இயக்கியவுடன், நீங்கள் எந்த தளத்திலும் இயங்கலாம் மற்றும் நிறைய நேரத்தைச் சேமிக்கலாம்.
  • JVM JIT (Just-in-Time) தொகுப்பாளருடன் வருகிறது, இது ஜாவா மூலக் குறியீட்டை குறைந்த-நிலை இயந்திர மொழியாக மாற்றுகிறது. எனவே, இது வழக்கமான பயன்பாடாக வேகமாக இயங்குகிறது.

JDK இன் அம்சங்கள்

இங்கே உள்ளன JDK இன் முக்கிய அம்சங்கள்:

  • ஒற்றை பிடிப்பு தொகுதியில் பல நீட்டிப்புகளைக் கையாள இது உதவுகிறது.
  • JRE யில் உள்ள அனைத்து அம்சங்களையும் JDK உள்ளடக்கியது.
  • இது ஒரு தொகுப்பி, பிழைதிருத்தி போன்ற மேம்பாட்டு கருவிகளைக் கொண்டுள்ளது.
  • JDK ஜாவா மூலக் குறியீட்டை உருவாக்க மற்றும் செயல்படுத்துவதற்கான சூழலை வழங்குகிறது.
  • இது விண்டோஸ், யூனிக்ஸ் மற்றும் மேக் இயக்க முறைமைகளில் நிறுவப்படலாம்.
  • டயமண்ட் ஆபரேட்டரை துல்லியமாக எழுதுவதற்குப் பதிலாக ஒரு பொதுவான வகை இடைமுகத்தைக் குறிப்பிட பயன்படுத்தலாம்.

JRE இன் அம்சங்கள்

இங்கே உள்ளன JRE இன் முக்கிய அம்சங்கள்:

  • ஜாவா இயக்க நேர சூழல் என்பது JVM உண்மையில் இயங்கும் கருவிகளின் தொகுப்பாகும்.
  • JRE ஜாவா வெப் ஸ்டார்ட் மற்றும் ஜாவா ப்ளக்-இன் உள்ளிட்ட வரிசைப்படுத்தல் தொழில்நுட்பத்தைக் கொண்டுள்ளது.
  • டெவலப்பர்கள் JRE இல் மூலக் குறியீட்டை எளிதாக இயக்க முடியும், ஆனால் அவர்/அவள் ஜாவா நிரலை எழுதி தொகுக்க முடியாது.
  • இதில் ஜாவா டேட்டாபேஸ் கனெக்டிவிட்டி (JDBC), ரிமோட் மெதட் இன்வெகேஷன் (RMI), ஜாவா பெயரிடல் மற்றும் டைரக்டரி இன்டர்ஃபேஸ் (JNDI) மற்றும் பல போன்ற ஒருங்கிணைப்பு நூலகங்கள் உள்ளன.
  • JRE இல் JVM மற்றும் Java HotSpot மெய்நிகர் இயந்திர கிளையண்ட் உள்ளது.

JVM இன் அம்சங்கள்

JVM இன் முக்கிய அம்சங்கள் இங்கே:

  • இது மேகக்கணி சூழலில் அல்லது உங்கள் சாதனத்தில் பயன்பாடுகளை இயக்க உதவுகிறது.
  • ஜாவா மெய்நிகர் இயந்திரம் பைட் குறியீட்டை இயந்திர-குறிப்பிட்ட குறியீடாக மாற்றுகிறது.
  • இது நினைவக மேலாண்மை, பாதுகாப்பு, குப்பை சேகரிப்பு மற்றும் பல போன்ற அடிப்படை ஜாவா செயல்பாடுகளை வழங்குகிறது.
  • JVM Java Runtime Environment வழங்கும் நூலகங்கள் மற்றும் கோப்புகளைப் பயன்படுத்தி நிரலை இயக்குகிறது.
  • JDK மற்றும் JRE இரண்டிலும் ஜாவா மெய்நிகர் இயந்திரம் உள்ளது.
  • இது ஜாவா நிரலை வரியாக இயக்க முடியும், எனவே இது மொழி பெயர்ப்பாளர் என்றும் அழைக்கப்படுகிறது.
  • ஜேவிஎம் எளிதில் தனிப்பயனாக்கக்கூடியது, எடுத்துக்காட்டாக, நீங்கள் குறைந்தபட்ச மற்றும் அதிகபட்ச நினைவகத்தை ஒதுக்கலாம்.
  • இது வன்பொருள் மற்றும் இயக்க முறைமையிலிருந்து சுயாதீனமானது. எனவே, நீங்கள் ஒரு முறை ஜாவா நிரலை எழுதி எங்கும் இயக்கலாம்.

JDK செயல்பாடுகள் எப்படி?

JDK செயல்பாடு



JDK இன் முக்கியமான கூறுகள் இங்கே:

  • JDK மற்றும் JRE : JVK மற்றும் வகுப்பு நூலகங்களை உள்ளடக்கிய JRE ஆல் இயக்கக்கூடிய முக்கிய ஜாவா நிரல்களை உருவாக்க JDK புரோகிராமர்களுக்கு உதவுகிறது.
  • வகுப்பு நூலகங்கள்: இது ஜாவா நிரல் இயக்க நேரத்தில் அழைக்கக்கூடிய மாறும் ஏற்றக்கூடிய நூலகங்களின் குழு.
  • தொகுப்பாளர்கள்: இது ஒரு ஜாவா நிரலாகும், இது டெவலப்பர்களின் உரை கோப்பை ஏற்றுக்கொண்டு ஜாவா வகுப்பு கோப்பில் தொகுக்கிறது. இது ஜாவா பைட் குறியீட்டைக் கொண்ட தொகுப்பாளரால் வழங்கப்பட்ட வெளியீட்டின் பொதுவான வடிவமாகும். ஜாவாவில், முதன்மை தொகுப்பாளர் ஜாவாக்.
  • பிழைத்திருத்தங்கள்: பிழைத்திருத்தம் என்பது ஜாவா நிரல்களை டெவலப்பர்கள் மற்றும் பிழைத்திருத்தங்களை அனுமதிக்கும் ஒரு ஜாவா நிரலாகும்.
  • ஜாவாடாக்: ஜாவாடாக் என்பது ஜாவாவுக்கான சன் மைக்ரோசிஸ்டம்ஸால் செய்யப்பட்ட ஆவணமாகும். மூல நிரலிலிருந்து HTML கோப்பில் API ஆவணங்களை உருவாக்க ஜாவாடாக் பயன்படுத்தப்படலாம்

எப்படி JRE செயல்பாடுகள்?

ஜேஆர்இ செயல்பாடு

JRE உடன் JVM, நூலக வகுப்புகள் மற்றும் மேம்பாட்டு கருவிகள் உள்ளன. நீங்கள் ஜாவா குறியீட்டை எழுதி தொகுத்தவுடன், கம்பைலர் பைட் குறியீட்டைக் கொண்ட ஒரு வகுப்பு கோப்பை உருவாக்குகிறது.

JRE இன் முக்கியமான கூறுகள் இங்கே:

  • வகுப்பு ஏற்றிகள்: ஜாவா நிரலை இயக்குவதற்குத் தேவையான பல்வேறு வகுப்புகளை வகுப்பு ஏற்றி ஏற்றுகிறது. பூட்ஸ்ட்ராப் கிளாஸ் லோடர், எக்ஸ்டென்ஷன்ஸ் கிளாஸ் லோடர் மற்றும் சிஸ்டம் கிளாஸ் லோடர் எனப்படும் மூன்று கிளாஸ் லோடர்களை JVM பயன்படுத்துகிறது.
  • பைட் குறியீடு சரிபார்ப்பு: பைட் குறியீடு சரிபார்ப்பு பைட் குறியீட்டை சரிபார்க்கிறது, இதனால் குறியீடு மொழிபெயர்ப்பாளரைத் தொந்தரவு செய்யாது.
  • மொழி பெயர்ப்பாளர்: வகுப்புகள் ஏற்றப்பட்டு, குறியீடு சரிபார்க்கப்பட்டவுடன், மொழிபெயர்ப்பாளர் குறியீட்டை வரியாகப் படிக்கிறார்.
  • இயக்க நேரம்: ரன்-டைம் என்பது ஒரு குறிப்பிட்ட புரோகிராம் இயங்கும் காலத்தை விவரிக்க முக்கியமாக நிரலாக்கத்தில் பயன்படுத்தப்படும் ஒரு அமைப்பு.
  • வன்பொருள்: ஜாவாவின் சொந்த குறியீட்டை நீங்கள் தொகுத்தவுடன், அது ஒரு குறிப்பிட்ட வன்பொருள் தளத்தில் இயங்கும்.

இந்த வழியில், ஜாவா நிரல் JRE இல் இயங்குகிறது.

JVM செயல்பாடுகள் எப்படி?

JVM செயல்பாடு



JVM இன் முக்கியமான கூறுகள் இங்கே:

1) வகுப்பு ஏற்றி

வகுப்பு ஏற்றி என்பது வகுப்பு கோப்புகளை ஏற்றுவதற்கு பயன்படுத்தப்படும் ஒரு துணை அமைப்பு ஆகும். இது மூன்று முக்கிய செயல்பாடுகளை செய்கிறது. ஏற்றுதல், இணைத்தல் மற்றும் துவக்கம்.

2) முறை பகுதி

JVM முறை பகுதி மெட்டாடேட்டா, ஜாவா முறைகளுக்கான குறியீடு மற்றும் நிலையான இயக்க நேரக் குளம் போன்ற வகுப்பின் கட்டமைப்பைச் சேமிக்கிறது.

3) குவியல்

அனைத்து பொருள்கள், வரிசைகள் மற்றும் நிகழ்வு மாறிகள் ஒரு குவியலில் சேமிக்கப்படும். இந்த நினைவகம் பல இழைகளில் பகிரப்படுகிறது.

4) JVM மொழி அடுக்குகள்

ஜாவா மொழி அடுக்குகள் உள்ளூர் மாறிகள் மற்றும் அதன் பகுதி முடிவுகளை சேமிக்கிறது. ஒவ்வொரு நூலும் அதன் சொந்த JVM மொழி அடுக்கைக் கொண்டிருக்கிறது, நூல் உருவாக்கப்படும் போது ஒரே நேரத்தில் உருவாக்கப்பட்டது. முறையைத் தொடங்கும்போது ஒரு புதிய சட்டகம் உருவாக்கப்படுகிறது, மேலும் முறை அழைப்பு செயல்முறை முடிந்ததும் அது அகற்றப்படும்.

5) பிசி பதிவுகள்

பிசி பதிவுகள் ஜாவா மெய்நிகர் இயந்திர அறிவுறுத்தலின் முகவரியை சேமிக்கிறது, இது தற்போது செயல்படுத்தப்படுகிறது. ஜாவாவில், ஒவ்வொரு நூலுக்கும் தனித்தனி பிசி பதிவு உள்ளது.

6) பூர்வீக முறை அடுக்குகள்

பூர்வீக முறை அடுக்குகள் பூர்வீக நூலகத்தைப் பொறுத்தது. இது சொந்த குவியல்களில் நினைவகத்தை ஒதுக்குகிறது அல்லது எந்த வகை ஸ்டாக்கையும் பயன்படுத்துகிறது.

7) மரணதண்டனை இயந்திரம்

இது மென்பொருள், வன்பொருள் அல்லது முழுமையான அமைப்புகளைச் சோதிக்கப் பயன்படுத்தப்படும் ஒரு வகை மென்பொருள். சோதனை செயல்படுத்தும் இயந்திரம் ஒருபோதும் சோதனை செய்யப்பட்ட தயாரிப்பு பற்றிய எந்த தகவலையும் கொண்டு செல்லாது.

8) பூர்வீக முறை இடைமுகம்

பூர்வீக முறை இடைமுகம் ஒரு நிரலாக்க கட்டமைப்பாகும். இது JVM இல் இயங்கும் ஜாவா குறியீட்டை நூலகங்கள் மற்றும் சொந்த பயன்பாடுகளால் அழைக்க அனுமதிக்கிறது.

9) பூர்வீக முறை நூலகங்கள்

நேட்டிவ் லைப்ரரிஸ் என்பது நேட்டிவ் லைப்ரரியின் (சி, சி ++) தொகுப்பாகும், அவை எக்ஸிகியூஷன் எஞ்சினுக்குத் தேவை.

JDK, JRE மற்றும் JVM இடையே உள்ள வேறுபாடு

JDK vs JRE vs JVM ஆகியவற்றுக்கு இடையேயான முக்கிய வேறுபாடுகள் இங்கே:

ஜே.டி.கே ஜேஆர்இ ஜேவிஎம்
JDK இன் முழு வடிவம் ஜாவா டெவலப்மென்ட் கிட்.JRE இன் முழு வடிவம் ஜாவா இயக்க நேர சூழல்.JVM இன் முழு வடிவம் ஜாவா மெய்நிகர் இயந்திரம்.
JDK என்பது ஜாவாவில் பயன்பாடுகளை உருவாக்க ஒரு மென்பொருள் மேம்பாட்டு கிட் ஆகும்.இது ஜாவா குறியீட்டை இயக்க தேவையான கூறுகளை ஜாவா வகுப்பு நூலகங்களுக்கு வழங்கும் ஒரு மென்பொருள் தொகுப்பாகும்.JVM ஜாவா பைட் குறியீட்டைச் செயல்படுத்துகிறது மற்றும் அதைச் செயல்படுத்துவதற்கான சூழலை வழங்குகிறது.
JDK மேடை சார்ந்தது.ஜேஆர்இ கூட மேடையை சார்ந்தது.JVM மேடை-சுயாதீனமானது.
இது ஜாவா குறியீட்டை உருவாக்குதல், பிழைதிருத்தம் மற்றும் கண்காணிப்பதற்கான கருவிகளைக் கொண்டுள்ளது.நிரலை இயக்க JVM தேவைப்படும் வகுப்பு நூலகங்கள் மற்றும் பிற துணை கோப்புகள் இதில் உள்ளன.மென்பொருள் மேம்பாட்டு கருவிகள் JVM இல் சேர்க்கப்படவில்லை.
இது ஜேஆர்இயின் சூப்பர்செட்இது JDK இன் துணைக்குழு ஆகும்.JVM என்பது JRE இன் துணைக்குழு ஆகும்.
JREK மற்றும் JVM ஆல் செயல்படுத்தப்பட்டு இயக்கக்கூடிய ஜாவா நிரல்களை உருவாக்க டெவலப்பர்களை JDK செயல்படுத்துகிறது.JRE என்பது JVM ஐ உருவாக்கும் ஜாவாவின் ஒரு பகுதியாகும்.இது மூலக் குறியீட்டைச் செயல்படுத்தும் ஜாவா இயங்குதளக் கூறு ஆகும்.
JDK நிறுவியுடன் வருகிறது.JRE மூலக் குறியீட்டைச் செயல்படுத்துவதற்கான சூழலை மட்டுமே கொண்டுள்ளது.JVM மென்பொருள் JDK மற்றும் JRE இரண்டிலும் தொகுக்கப்பட்டுள்ளது.