نمایش نتایج 1 تا 13 از 13

نام تاپیک: مفاهیم اولیه jvm jre ؟

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60

    مفاهیم اولیه jvm jre ؟

    سلام دوستان
    من مدتی جاوا می خونم اما هنوز در مفاهیم اولیه مشکل دارم
    1- لطفا در مورد کلمات jvm, jre بایت کد و اگر چیز ابتدایی دیگری به نظرتان میرسد توضیح دهید که کی مثلا بایت کد تولید میکنه کی استفاده می کنه (نه اینکه مثلا بگین jvm ماشین مجازی جاوس و یا jre محیط اجرایی)یکم واضح توضیح بدین لطفا
    2- آدرس فیزیکی jvm , jre چیه؟(اگر jdk در آدرس "C:\Program Files\Java\jdk1.5.0_03" باشد)
    3-کامپایلر جاوا چیه(وکجاس) اینترپرتورش چیه؟(وکجاس)
    4- اگر مثلا یک فایل .class داشتیم برای اجرایش چی لازمه؟(jvm ..) ؟
    5-java home ,path که set می کنیم چه کار می کنن؟و آدرس چین که set می کنیم؟
    ممنون
    آخرین ویرایش به وسیله nargesi : پنج شنبه 31 فروردین 1385 در 20:26 عصر

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    82
    بایت کد توسط javac که کامپایلر جاوا هست تولید میشه و در دایرکتوری C:\Program Files\Java\jdk1.5.0_03\lib قرار داره. هدف از تولید بایت کد انتقال آسان برنامه شما به یک سیستم و محیط دیگه که قابلیت اجرای برنامه شما را دارا میباشد (یعنی در آن سیستم jvm نصب است) میباشد.
    بعد از ایجاد بایت کد اینترپرتر java آن را ترجمه کرده و به زبان ماشین تبدیل میکند(یه صورت موقتی) که قابل اجرا برای سیستم عامل شما میباشد این اینترپرتر در همان دایرکتوری قرار داره که کامپایلر هست.
    از جایی که بایت کد به زبان ماشین تبدیل میشه و بعد اجرا میشه تماما وظیفه JVM هست که در واقع در سیستم شما به عنوان java نصب هست.
    set کردن path برای جاوا در واقع کتابخانه و دستورات جاوا را به صورت عمومی و قابل اجرا در تمام درایوها و دایرکتوری های موجود در سیستم شما در میاره یعنی میتونید برنامه را در هر جایی از سیستمتان ذخیره کنید و از همانجا آن را اجرا کنید.
    برای برنامه نویسان j2se به نظر من set کردن C:\Program Files\Java\jdk1.5.0_03\lib به عنوان path کافی هستش.
    امیدوارم که دوستان اگه اشتباهی داشتم منو تصحیح کنند.

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60
    این چیزایی که نوشتین به نظر میاد به جای lib باید bin بکار برد حداقل من که path در مسیر C:\Program Files\Java\jdk1.5.0_03\bin گذاشتم وشاید مسیر کامپایلر جاوا هم شما منظورتون bin بوده
    پس کامپایلر بایت کد درست میکنه(بایت کد همون چیزی که تو فایل class. است؟) وبعد اینترپرتور به زبان ماشین در میاره .میشه دوباره کار jvm توضیح بدین؟ jre چه کار میکنه؟

  4. #4
    کاربر دائمی آواتار persianshadow
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    تهران
    پست
    758
    درباره jre قبلا بحث شده. مخفف java runtime environment هست. فرض کن شما یک برنامه

    نوشتی و حالا می خوای اونو بدی به کاربر به نظرت کاربر باید jdk نصب کنه ؟! خب جواب نه هست

    بنابراین jre تنها شامل مفسر جاوا و همچنین کلاس های است که برنامه های جاوا برای کار به ان

    ها احتیاج پیدا می کنند. یعنی با نصب این برنامه چند مگا بایتی بر روی کامپیوتر کاربر اجازه ا

    جرای برنامه های جاوا رو به اون می دی.

  5. #5
    یک برنامه در جاوا هم ترجمه و هم تفسیر مى‌شود، شما ابتدا برنامه را به یک زبان میانى با نام کدبایتى جاوا (Java bytecodes) کامپایل می کنید.
    کدهاى مستقل از محیط، بوسیله مفسر (Interpreter) در یک محیط جاوا،ترجمه مى‌شوند. مفسر(JVM)، هر دستور کدبایتى جاوا را تجزیه کرده و آن را روى کامپیوتر اجرا مى‌کند. عمل ترجمه فقط یک بار انجام‌مى‌شود. عمل تفسیر در هر بار اجرای برنامه اتفاق مى‌افتد.مى‌توان کدبایتى جاوا را مانند دستورات زبان ماشین براى ماشین مجازى جاوا (JVM)در نظر گرفت.
    VIP=Very Important Person

  6. #6
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60
    یعنی وقتی می نویسیم javac کامپایلر جاوا را صدا می کنیم که ربطی هم به jvm نداره و گفتین که jvm مفسر جاواست که جز jre هم هست.میشه آدرس فیزیکی jre بگید کجاست و jvm کدوم قسمتشه؟ یعنی گفتین اگه یه فایل class. داشتیم و خواستیم اینو به کسی بدیم شخص باید jre داشته باشه ما به همراه این فایل class. کدوم قسمت jdk رو باید به شخص بدیم؟

  7. #7
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    82
    در مورد دایرکتوری ممنون که منو تصحیح کردی. اما در مورد مساله آدرس فیزیکی که دنبالش میگردی یه مثال میزنم که مثلا اگه یه فایل rm داشته باشی (که میدونیم با RealPlayer باز میشه )و به کسی بدی که RealPlayer نداشته باشه خب نمیتونه اجراش کنه و اول باید اونو نصب کنه.
    برای اجرای کلاسهای جاوا فقط کافیه که jre (که شامل jvm و کلیه کتابخانه های لازمه و مفسر مربوطه است) رو سیستم client نصب باشه. بعد شما کلاس فایل خودتو بهش بده که اونم از طریق IDE یا Command Prompt اونو اجراش میکنه.

  8. #8
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60
    از راهنماییاتون ممنون
    اما من آخر نفهمیدم که مثلا کجای jdk من jre قرار داره و jvm که انگار داخل jre قرار داره کجاست.داخل jdk یک فولدر به اسم jre هست(که حجمی حدود 80m داره) آیا این همون jre که می گین؟

  9. #9
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    82
    میشه بگی چرا دنبال این قضیه هستی شاید بهتر بشه کمک کرد. من متوجه نمیشم که منظورت چی هست. آیا دنبال فایل بخصوصی هستی که وظیفه jvm رو به عهده داره که به عقیده من وقت طلف کردن هستش.

  10. #10
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60
    خب من فکر کردم که ندونستن اینا غیر عادیه و همه می دونن اینا جای فیزیکیشون کجاس مثل jdk که همه فکر کنم بدونن کجاس اما من اصلا نمی دونم jvm یه فایل یا یه سری فایل واینا اما انگار زیاد مهمم نیست حالا اگر ممکن این چند تا سوالم که من از این صحبتا برداشت کردم و هنوز درست نمی دونم درست یا غلطیشو بگین اگرم غلط دیگه خودم درستشو پیدا می کنم
    1- کامپایلر جاوا از فایل جاوا ما یک فایل class. که به زبان بایت کد است می سازد
    2-مفسر جاوا که همان jvm است از این بایت کد استفاده می کند و فایل زبان ماشین تولید می کند
    3-اگر ما این فایل class. روی کامپیوتر دیگری ببریم و بخواهیم اجرا کنیم مفسر جاوا وو یک سری کلاس دیگه لازم داریم و کل jdk لازم نیست که به این قسمت jre میگن
    بازم ممنون از راهنماییاتون

  11. #11
    کاربر دائمی آواتار persianshadow
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    تهران
    پست
    758
    کاملا درست هست. در ضمن jre خودش setup داره می تونی از سایت سان دریافت کنی و اونو

    فقط برای کاربر نهایت نصب کنی.

  12. #12
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1385
    پست
    60
    از کمکتون ممنون فکر می کنم متوجه شدم اینا رو

  13. #13

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •