UyumBo'lim—xotirabuhisoblanadidinamik ravishdaajratilgandavomidadasturishlash vaqti
StakBo'lim—vaqtinchalikma'lumotlarsaqlashqachonchaqirishfunktsiyalari(shundayfunktsiya parametrlari, qaytish manzillari va mahalliy o'zgaruvchilar sifatida )
Eslatma bu the o'lchamlari ning the matn va ma'lumotlar bo'limlar bor belgilangan, kabi ularning o'lchamlari qilmang _ o'zgartirish davomida dastur yugur vaqt. Biroq, the stack va uyum bo'limlar qisqarishi mumkin va o'sadi dinamik ravishda davomida dastur ijro. Har biri vaqt a funksiya hisoblanadi chaqirdi, a faollashtirishrekord o'z ichiga olgan funktsiyasi parametrlar, mahalliy o'zgaruvchilar va the qaytish manzil hisoblanadi surildi ustiga the stack; qachon boshqaruv hisoblanadi qaytdi dan _ funktsiya, the faollashtirish rekord hisoblanadi otildi dan the stack. Xuddi shunday, the to'p bo'ladi o'sadi kabi xotira hisoblanadi dinamik ravishda ajratilgan, va bo'ladi qisqarish qachon xotira hisoblanadi qaytdi uchun the tizimi. Garchi the stack va uyum bo'limlar o'sadi bir tomon boshqa, the faoliyat ko'rsatmoqda tizimi kerak ta'minlash ular qil emas bir-biriga yopishib olishbitta boshqa. Biz ta'kidlaymizki, dastur o'z-o'zidan jarayon emas. Dastur bu a passiv ob'ekt, masalan, diskda saqlangan ko'rsatmalar ro'yxatini o'z ichiga olgan fayl (ko'pincha chaqirdi a bajariladiganfil ). In kontrast, a jarayon hisoblanadi a faolob'ekt, keyingi bajarilishi kerak bo'lgan ko'rsatma va to'plamni ko'rsatadigan dastur hisoblagichi bilan ning bog'langan resurslar. A dastur aylanadi a jarayon qachon a bajariladigan fayl xotiraga yuklanadi. Bajariladigan fayllarni yuklashning ikkita keng tarqalgan usuli - bajariladigan faylni ko'rsatadigan belgini ikki marta bosish va
nomi ning the bajariladigan fayl yoqilgan the buyruq chiziq (sifatida ichida prog.exe yoki a.out ).
Ikki jarayon bir xil dastur bilan bog'lanishi mumkin bo'lsa-da, ular ikkita alohida bajarilish ketma-ketligi hisoblanadi. Masalan, bir nechta foydalanuvchilar mumkin bo'l yugurish boshqacha nusxalari ning the pochta dastur, yoki the bir xil foydalanuvchi mumkin chaqirish ko'p nusxalari ning the veb brauzer dastur. Har biri ning bular hisoblanadi alohida jarayon; va garchi the matn bo'limlar bor ekvivalent, the ma'lumotlar, to'p, va stack bo'limlar farqlanadi. Bu hisoblanadi shuningdek umumiy uchun bor a jarayon bu yumurtlamalar ko'p jarayonlar ishlaydi. Biz bunday masalalarni 3.4-bo'limda muhokama qilamiz.
Eslatma bu a jarayon mumkin o'zi bo'l a ijro muhit uchun boshqa kod. Java dasturlash muhiti bunga yaxshi misol bo'ladi. Aksariyat hollarda bajariladigan Java dasturi Java virtual mashinasida ( JVM ) bajariladi. JVM yuklangan Java kodini sharhlovchi jarayon sifatida ishlaydi va oladi harakatlar (orqali onalik mashina ko'rsatmalar) yoqilgan nomidan ning bu kod. Misol uchun, kompilyatsiya qilingan Java dasturini ishga tushirish uchun Program.class , biz kiritamiz
java Dastur
Buyruq java JVM ni oddiy jarayon sifatida ishga tushiradi , bu esa o'z navbatida amalga oshiriladi the Java dastur Dastur ichida the virtual mashina. The tushuncha hisoblanadi xuddi shunday kabi simulyatsiya, bundan mustasno bu the kod, o'rniga ning bo'lish yozilgan uchun a turli ko'rsatmalar to'plami, Java tilida yozilgan.