یکم خودم فکر کردم ! بعدشم از حل مسائل سیلبر رفتم نگاه کردم (تقلبی

)
به این نتیجه رسیدم فقط نمیدونم درست استنباط کردم یا نه؟!
اگر این اجازه داده شود که در جدول صفحه دو ورودی باشد که به یک قاب صفحه در حافظه اشاره کنند، کاربران میتوانند کدها و داده ها رو به اشتراک (صفحات مشترک) بگذارند دو حالت پیش میآید! ۱- کد چند مدخلی باشد ۲- کد چند مدخلی نباشد.
کد چند مدخلی:کدی غیر خود تغییر است به این معنی که در طول اجرا هیچ وقت تغییر نمیکنه پس همزمان دو یا چند فرایند میتونند کد یکسانی را همزمان اجرا کنند و فقط کپی ثبات ها و حافظه داده های خودشون رو جداگانه نگه داری کنند.
در این صورت در حالت اول: یک کپی از کد داشته باشد و به تعداد دسترسی ها برای داده ها وثباتهای مختلف که به این کد دسترسی شده بخش های جداگانه ساخته میشه و تغییرات رو هر فرایندی که میده خود اون فرایند میبیند.
در صورتیکه در حالت دوم اگر کد چند مدخلی نباشه به تعداد دسترسی ها میاد کپی های مختلف میسازه که کلی حافظه اینجور لازم میشه و البته تغییرات برای هر فرایند در فرایندهای دیگه منعکس میشه!!
متن انگلیسی جواب:
By allowing two entries in a page table to point to the same page frame
in memory, users can share code and data. If the code is reentrant, much
memory space can be saved through the shared use of large programs
such as text editors, compilers, and database systems. “Copying” large
amounts of memory could be effected by having different page tables
point to the same memory location.
However, sharing of nonreentrant code or data means that any user
having access to the code can modify it and these modifications would
be reflected in the other user’s “copy.”