JIT ใน Java คืออะไร? - ทำความเข้าใจเกี่ยวกับ Java Fundamentals



คอมไพเลอร์ Just-In-Time เป็นหนึ่งในส่วนสำคัญของ Java Runtime Environment บทความเกี่ยวกับ JIT ใน Java นี้จะบอกคุณว่าคอมไพเลอร์นี้ช่วยเพิ่มประสิทธิภาพของแอปพลิเคชัน Java ได้อย่างไร

ภาษาโปรแกรมทุกภาษาใช้คอมไพเลอร์ในการแปลงรหัสภาษาระดับสูงให้เป็นรหัสไบนารีระดับเครื่องเนื่องจากระบบเข้าใจเฉพาะรหัสไบนารี คอมไพเลอร์แตกต่างกันไปตามประเภทของภาษาโปรแกรม ตอนนี้พูดถึง มันใช้คอมไพเลอร์ที่น่าทึ่งนี้เรียกว่า JIT (Just-in-Time) ใน Java . บล็อกนี้จะบอกคุณเกี่ยวกับ JIT Java Compiler

ด้านล่างนี้เป็นหัวข้อที่กล่าวถึงในบทความนี้:





เริ่มกันเลย!

Java JIT Compiler - ภาพรวม

คอมไพเลอร์ Just-In-Time เป็นหนึ่งในส่วนสำคัญของไฟล์ . มีหน้าที่หลักในการเพิ่มประสิทธิภาพการทำงานของแอปพลิเคชันที่ใช้ Java ในเวลาทำงานหรือเวลาดำเนินการ โดยทั่วไปคำขวัญหลักของคอมไพเลอร์คือการเพิ่มประสิทธิภาพของแอปพลิเคชันสำหรับผู้ใช้ปลายทางและผู้พัฒนาแอปพลิเคชัน



เจาะลึก JIT ใน Java

  • ไบต์โค้ดเป็นศักยภาพหลักของสภาพแวดล้อม WORA (เขียนครั้งเดียวรันที่ไหนก็ได้) ของ Java ความเร็วของ แอปพลิเคชัน Java ขึ้นอยู่กับวิธีการแปลงรหัสไบต์เป็นรหัสเครื่องดั้งเดิม bytecode สามารถตีความหรือคอมไพล์เป็นโค้ดเนทีฟหรือเรียกใช้โดยตรงบนโปรเซสเซอร์ แต่ถ้าตีความ bytecode จะส่งผลโดยตรงต่อความเร็วของแอปพลิเคชัน

  • เพื่อเพิ่มความเร็วในการทำงานคอมไพเลอร์ JIT จะสื่อสารกับ JVM ในเวลาดำเนินการเพื่อรวบรวมลำดับรหัสไบต์เป็นรหัสเครื่องดั้งเดิม โดยทั่วไปเมื่อใช้ JIT Compiler ฮาร์ดแวร์จะเรียกใช้โค้ดเนทีฟได้อย่างง่ายดายเมื่อเทียบกับ JVM Interpreter การทำเช่นนี้จะได้รับความเร็วในการดำเนินการอย่างมาก

  • เมื่อคอมไพเลอร์ JIT คอมไพเลอร์ชุดของรหัสไบต์มันยังดำเนินการเพิ่มประสิทธิภาพบางอย่างเช่นการวิเคราะห์ข้อมูลการแปลจากการดำเนินการสแต็กเพื่อลงทะเบียนการดำเนินการกำจัดนิพจน์ย่อยเป็นต้นซึ่งทำให้ มีประสิทธิภาพมากเมื่อพูดถึงการดำเนินการและประสิทธิภาพ



เมื่อคุณทราบพื้นฐานของ JIT Compiler แล้วเรามาดูการทำงานของคอมไพเลอร์กันต่อไป

วิธีใช้ charat ใน java

การทำงานของ JIT Compiler ใน Java

JIT Compiler เพิ่มความเร็วในการทำงานของแอ็พพลิเคชัน Java ในขณะทำงาน เนื่องจาก Java เป็นไฟล์ ประกอบด้วย . โดยทั่วไปจะประกอบด้วยรหัสไบต์ที่เป็นอิสระจากแพลตฟอร์มและ eดำเนินการโดย JVM ในสถาปัตยกรรมที่หลากหลาย

การทดสอบข้ามเบราว์เซอร์โดยใช้ซีลีเนียม

ขั้นตอนการทำงาน:

แผนภาพด้านล่างแสดงให้เห็นว่าการทำงานจริงของการคอมไพล์เกิดขึ้นใน Java Runtime Environment อย่างไร

JIT Compiler - JIT ใน Java - Edureka

  1. เมื่อคุณเขียนรหัส , JRE ใช้คอมไพเลอร์ javac เพื่อคอมไพล์ระดับสูง ซอร์สโค้ดเป็นไบต์โค้ด . หลังจากนี้ JVM จะโหลดรหัสไบต์ ณ รันไทม์และแปลงเป็นรหัสไบนารีระดับเครื่องเพื่อดำเนินการเพิ่มเติมโดยใช้ Interpreter

  2. ดังที่ได้กล่าวไปแล้วข้างต้นการตีความโค้ด Java byte จะลดประสิทธิภาพเมื่อเทียบกับแอปพลิเคชันเนทีฟ นั่นคือจุดที่ JIT Compiler ช่วยในการเพิ่มประสิทธิภาพโดยการคอมไพล์โค้ดไบต์เป็นรหัสเครื่องดั้งเดิม 'ทันเวลาพอดี' วิ่ง.

  3. JIT Compiler ถูกเปิดใช้งานและเปิดใช้งานโดยดีฟอลต์เมื่อมีการเรียกใช้เมธอดใน Java เมื่อคอมไพล์เมธอด Java Virtual Machine จะเรียกใช้โค้ดที่คอมไพล์ของเมธอดโดยตรงโดยไม่ต้องตีความ ดังนั้นจึงไม่ต้องใช้หน่วยความจำและเวลาในการประมวลผลมากนัก โดยพื้นฐานแล้วจะช่วยเพิ่มความเร็วในการทำงานของ Java Native Application

นั่นคือวิธีการทำงาน ตอนนี้เรามาเจาะลึกในบทความนี้และทำความเข้าใจแง่มุมด้านความปลอดภัยของ JIT Compiler ใน Java

วิธีการใช้จาวาสคริปต์คืออะไร

ด้านความปลอดภัยของ JIT ใน Java

การคอมไพล์โค้ดไบต์ลงในโค้ดเครื่องโดย JIT Compiler ทำได้โดยตรงในหน่วยความจำ นั่นคือคอมไพลเลอร์ป้อนรหัสเครื่องลงในหน่วยความจำโดยตรงและเรียกใช้งาน ในกรณีนี้จะไม่เก็บรหัสเครื่องลงในดิสก์ก่อนเรียกใช้ไฟล์คลาสและเรียกใช้งาน โดยทั่วไปหน่วยความจำควรถูกทำเครื่องหมายว่าปฏิบัติการได้ เพื่อความปลอดภัยควรดำเนินการให้เสร็จสิ้นหลังจากเขียนโค้ดลงในหน่วยความจำแล้ว นอกจากนี้ควรทำเครื่องหมายเป็นแบบอ่านอย่างเดียวเนื่องจากหน่วยความจำปฏิบัติการเป็นช่องโหว่ด้านความปลอดภัย หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้คุณสามารถอ่านบทความนี้ได้ที่ JIT Compiler ด้านความปลอดภัย .

ตอนนี้เรามาดูกันว่าข้อดีข้อเสียของไฟล์ Just-In-Time Compiler ใน Java

ข้อดีและข้อเสียของ JIT ใน Java

ข้อดี :

  1. โค้ด Java ที่คุณเขียนเมื่อหลายปีก่อนจะทำงานได้เร็วขึ้นแม้กระทั่งในปัจจุบันและช่วยเพิ่มประสิทธิภาพของโปรแกรม Java

  2. ภาพเนทีฟยังทำงานได้เร็วขึ้นเนื่องจากไม่มีกิจกรรมเริ่มต้นและต้องใช้หน่วยความจำน้อยลง

จุดด้อย:

  1. เพิ่มความซับซ้อนของ .

  2. โปรแกรมที่มีโค้ดน้อยจะไม่ได้รับประโยชน์จากการคอมไพล์แบบทันเวลา

เรามาถึงตอนท้ายของบทความนี้เกี่ยวกับ JIT ใน Java ฉันหวังว่าคุณจะพบว่าข้อมูลนี้

ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก เราพร้อมที่จะช่วยเหลือคุณในทุกขั้นตอนในการเดินทางของคุณสำหรับการเป็นนอกเหนือจากคำถามสัมภาษณ์ java นี้เรามาพร้อมกับหลักสูตรที่ออกแบบมาสำหรับนักเรียนและมืออาชีพที่ต้องการเป็น Java Developer

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความ 'JIT in Java' และเราจะติดต่อกลับโดยเร็วที่สุด