فرایند (رایانش): تفاوت میان نسخه‌ها

بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
'''پردازه'''، یا '''فرایند<ref>{{یادکرد وب|عنوان=واژه‌نامه مرجع برای ترجمه محیط لینوکس|تاریخ بازبینی=۲۷ دسامبر ۲۰۱۱|ناشر=شورای عالی انفورماتیک|نشانی=http://tihcec.tabaar.com/Nashrie/Files/874.pdf|کد زبان=FA|archiveurl=https://web.archive.org/web/20120112083716/http://tihcec.tabaar.com/Nashrie/Files/874.pdf|archivedate=۱۲ ژانویه ۲۰۱۲|dead-url=yes}}</ref>''' یا '''پروسه''' {{به انگلیسی|process}} در [[رایانش]]، یک [[نمونه (علوم رایانه)|نمونه]] از یک [[برنامه (رایانه)|برنامه]] رایانه‌ای است که توسط یک یا بیشتر [[ریسه (رایانش)|ریسه]] درحال‌اجرا می‌باشد. یک پردازه، شامل یک برنامه و کنش‌های مرتبط با آن ([[پشته]]، مقدار فعلی [[ثبات]]‌ها، منابع (مانند فایل‌های بازشده)، ساختار [[بلاک کنترل فرایند]] و …) است. بر اساس نوع [[سیستم‌عامل]] (OS)، یک پردازه می‌تواند از چندین ریسه تشکیل شود، که دستورالعمل‌ها را به صورت [[همروندی (علوم رایانه)|همروند]] اجرا می‌کنند.<ref name="OSC Chap4">{{cite book|last1=Silberschatz|first1=Abraham|author-link=Abraham Silberschatz|last2=Cagne|first2=Greg|last3=Galvin|first3=Peter Baer|date=2004|title=Operating system concepts with Java|edition=Sixth|chapter=Chapter 4. Processes|publisher=[[John Wiley & Sons]]|isbn=0-471-48905-0}}</ref><ref name="Vah96">{{cite book|last=Vahalia|first=Uresh|date=1996|title=UNIX Internals: The New Frontiers|chapter=Chapter 2. The Process and the Kernel|publisher=Prentice-Hall Inc.|isbn=0-13-101908-2|url-access=registration|url=https://archive.org/details/unixinternalsnew00vaha}}</ref>
 
درحالیکه یک «برنامه» رایانه‌ای، یک گردآورد غیرفعال از [[مجموعه دستورالعمل|دستورالعمل]] است که معمولاً در یک فایل روی دیسک ذخیره شده‌است، یک «پردازه» در واقع اجرای آن دستورالعمل‌ها است مستلزم آن است که برنامه قبل از آن از روی دسیک به حافظه بارگذاری شده باشدگردد. چندین پردازه را می‌توان به یک برنامه مشابه مرتبط کرد، برای مثال، بازکردن چندین نمونه از یک برنامه مشابه، معمولاً منجر به ایجاد بیش از یک پردازه درحال‌اجرا از آن برنامه می‌شود.
 
[[چندوظیفگی در رایانه|چندوظیفگی]] روشی برای آن است که چندین پردازه، [[واحد پردازش مرکزی|پردازنده‌ها]] (CPUها) و دیگر منابع سیستمی را به اشتراک بگذارند. هر CPU (هسته) در هر زمان فقط یک [[وظیفه (رایانش)|وظیفه]] را اجرا می‌کند. با این حال چندوظیفگی به هر پردازنده امکان آن را می‌دهد، تا بین وظایف درحال‌اجرا [[تعویض زمینه|تعویض]] شود، و این کار را منتظرشدن برای تکمیل هر وظیفه انجام می‌دهد ([[پیش‌اجرایی (رایانش)|پیش‌اجرایی]]). بر اساس پیاده‌سازی سیستم‌عامل، تعویض را می‌توان موقعی اجرا کرد که وظایف، فعالیت‌های [[ورودی/خروجی]] را شروع می‌کنند یا برای تکمیل‌شان صبر می‌کنند، یا موقعی که یک وظیفه به صورت ارادی منجر به یک عمل CPU می‌شود، یا در [[وقفه]]‌های سخت‌افزاری، یا موقعی که زمان‌بند سیستم‌عامل می‌فهمد که یک پردازه، زمان عادلانه اشتراک CPU را منقضی کرده‌است (مثلا با [[زمان‌بند کاملاً عادلانه]] در [[هسته لینوکس]]).