ژیکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

ژیکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

پاورپوینت تحقیق درباره Virtual Memory حافظه مجازی

اختصاصی از ژیکو پاورپوینت تحقیق درباره Virtual Memory حافظه مجازی دانلود با لینک مستقیم و پر سرعت .

Virtual Memory

حافظه مجازی

50اسلاید

lدر زمان اجرا ارجاعات به حافظه بصورت دینامیک ترجمه می شوند.
lبدلیل وجود مسئله جابجایی، فرآیند ممکن است در جاهای مختلفی از حافظه قرار گیرد.
lممکن است یک برنامه را به تکه های مختلف شکسته باشیم و نیازی نباشد که این تکه ها در حافظه در کنار هم قرار بگیرند.

نیازی نیست که تمام تکه های برنامه در حال اجرا، وارد حافظه شوند.

lسیستم عامل چند تکه از برنامه را برای اجرا به حافظه اصلی می آورد.
lمجموعه مقیم: قسمتی از برنامه که داخل حافظه اصلی است.
lوقتی که به آدرسی نیاز داشته باشیم که در حافظه اصلی نباشد یک وقفه تولید می گردد.
lسپس، سیستم عامل فرآیند را مسدود می کند.
lقسمت مورد نیاز که حاوی آدرس منطقی تولید شده است وارد حافظه می گردد.
lسیستم عامل یک درخواست I/O خواندن دیسک را صادر می کند.
lمادامی که درخواست I/O تکمیل نشده است، برنامه دیگری برای اجرا فرستاده می شود.

وقتی درخواست آماده شد، یک وقفه صادر می شود که باعث می شود سیستم عامل فرآیند مسدود شده را به حالت آماده برگرداند

lفرآیندهای بیشتری وارد حافظه اصلی می شوند.
lچون فقط تکه هایی از هر فرآیند به حافظه آورده شده است.
lلذا احتمال اینکه همیشه یک فرآیند در وضعیت آماده اجرا باشد بیشتر است.
lممکن است فرآیند از حافظه اصلی بزرگتر باشد.
lحافظه واقعی
lحافظه اصلی
lحافظه مجازی
lحافظه روی دیسک
امکان چند برنامگی را فرآهم می کند و کاربر را از محدودیت های حافظه اصلی نجات میدهد
lکوبیدگی به جابجایی قسمتی از برنامه درست قبل از وقتی که به آن نیاز داریم گفته می شود.
lدر این حالت بیشتر وقت پردازنده به جای اجرای دستورات کاربر صرف جابجایی تکه ها می شود.
lارجاعات به کد برنامه و داده در فرآیند بصورت خوشه ای است.
lدر یک دوره کوتاه زمانی،  تعداد کمی از تکه های فرآیند مورد استفاده قرار می گیرند.
lلذا، می توان فهمید که در آینده نزدیک به کدام تکه ها نیاز خواهیم داشت و از کوبیدگی اجتناب کرد.
lاین مسئله موید این مطلب است که حافظه مجازی بطور موثر کار می کند.
lارجاعات به کد برنامه و داده در فرآیند بصورت خوشه ای است.

دانلود با لینک مستقیم


پاورپوینت تحقیق درباره Virtual Memory حافظه مجازی

دانلود تحقیق حافظة اصلی پایگاه داده ها 40 ص

اختصاصی از ژیکو دانلود تحقیق حافظة اصلی پایگاه داده ها 40 ص دانلود با لینک مستقیم و پر سرعت .

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 54

 

Main Memory Database

حافظة اصلی پایگاه داده ها

مقدمه

در اواسط دهه 1980، با نزول قیمت DRAM، این ایده مطرح شد که کامپیوترهای آتی با داشتن حافظه اصلی با ظرفیت بالا، می توانند بسیاری از پایگاه داده ها را درحافظه اصلی داشته باشند. در این شرایط می توان همه I/O ها (که بسیار هزینه بر می باشند) را از پردازش DBMS حذف نمود. بنابراین معماری DBMS دستخوش تغییرات جدی می شود و در یک MAIN MEMORY DBMS(MMDBMS)، مدیریت I/O دیگر نقشی نخواهد داشت.

نکته مهم در یک MMDB، چگونگی انجام تراکنشها و recovery بصورت کارا است. برخی از الگوریتمهای پیشنهادی براساس این فرض عمل می کنند که قسمت کوچکی از حافظه اصلی بصورت ماندگار وجود دارد که اطلاعاتش توسط باطری در صورت قطع برق از بین نخواهد رفت. این قسمت از حافظه اصلی برای نگهداری redo log ها استفاده می شود.

تعداد دیگری از الگوریتمهای پیشنهادی پیش فرض حافظه ماندگار را ندارند و همچنان از عملیات I/O برای نوشتن اطلاعات تراکنش در حافظه ماندگار استفاده می کنند. بنابراین در این الگوریتمها عملیات I/O بطور کامل حذف نمی شود، بلکه تعدادشان بسیار کمتر می شود زیرا I/Oمربوط به نوشتن اطلاعات صفحات buffer ها، حذف خواهد شد.

در یک MMDBMS، ساختارداده های ساده مانند T-Tree و همچنین bucket-chained hash جایگزین ساختارداده هایی چون B-Tree و linear hash در DBMS های مبتنی بر دیسک می شوند. بنابراین سرعت اجرای پرس و جو(پرس و جو) و بهنگام سازی بسیار افزایش می یابد و هزینه index lookup و نگهداری ،فقط مربوط به پردازنده و دسترسی به حافظه اصلی خواهد شد.

یکی از مشکلات اصلی در MMDBMS ها بهینه کردن درخواستهاست. عدم وجود I/O به عنوان فاکتور اصلی در هزینه ها به معنای پیچیدگی بیشتر مدل کردن هزینه در یک MMDBMS است زیرا در اینجا یکسری فاکتورهای فازی از قبیل هزینه اجرای پردازنده ، باید در نظر گرفته شوند. در این حالت باید با استفاده از تعامل روش coding، عوامل سخت افزاری مانند پردازنده و معماری حافظه و پارامترهای پرس و جو، به یک مدل قابل اطمینان از هزینه اجرا در حافظه اصلی رسید.

در دهه 1990، MMDBMS ها با افزایش سایز دیسکها و سایز مسائل همراه با افزایش ظرفیت DRAM ها، به اوج محبوبیت خود رسیدند.


دانلود با لینک مستقیم


دانلود تحقیق حافظة اصلی پایگاه داده ها 40 ص

نقد داستان کوتاه A Christmas Memory by Truman Capote

اختصاصی از ژیکو نقد داستان کوتاه A Christmas Memory by Truman Capote دانلود با لینک مستقیم و پر سرعت .

نقد داستان کوتاه A Christmas Memory by Truman Capote


نقد داستان کوتاه                A Christmas Memory  by Truman Capote

نقد داستان کوتاه                A Christmas Memory  by Truman Capote

 

نوع فایل :  pdf    

زبان : انگلیسی

 تعداد صفحات:  16


دانلود با لینک مستقیم


نقد داستان کوتاه A Christmas Memory by Truman Capote

مدیریت حافظه و منابع Memory and Resource Management

اختصاصی از ژیکو مدیریت حافظه و منابع Memory and Resource Management دانلود با لینک مستقیم و پر سرعت .

مدیریت حافظه و منابع Memory and Resource Management


مدیریت حافظه و منابع Memory and Resource Management

دانلود مقاله تحقیقی آزمایشگاه سیستم عامل با موضوع مدیریت حافظه و منابع Memory and Resource Management

 

نوع فایل Word دانلود انواع تحقیق

تعداد صفحات : 37

*همراه با ترجمه به زبان انگلیسی*

شرح محتوا 

مدیریت حافظه و منابع

C++ در مدیریت حافظه انعطاف زیادی دارد ، اما تعداد کمی از برنامه نویسان C++ مکانیسم های در دسترس و مورد استفاده و موجود را به طور کامل درک کرده اند .در این محیط برنامه نویسی ، سربار گذاری ، سازنده ها و مخرب ها ، استثناء ها ، توابع مجازی و استاتیک ، توابع عملگر و غیر عملگر همه با هم برای ایجاد انعطاف پذیری زیاد و مدیریت حافظه سفارشی ، می آیند . متاسفانه ، و شاید به دلیل اجتناب ناپذیر بودن ، همه اینها می توانند موجب کمی پیچیدگی شوند .
در این فصل ، ما نگاهی داریم به ابنکه چگونه خصوصیات و ترکیبات مختلف C++ در مدیریت حافظه مورد استفاده قرار می گیرند ، چگونه گاهی اوقات به طور شگفت انگیز واکنش نشان می دهند ، و چگونه واکنش هایشان را ساده می کنند ...

شکست در متمایز کردن تخصیص Array و Scalar

آیا یک Widget همان آرایه ای از Widget ها است ؟ البته که نه . چرا تعدادی از برنا مه نویسان C++ از یافتن عملگرهای مختلفی که برای اختصاص دادن و آزاد کردن آرایه ها واسکالرها استفاده شده است ، تعجب می کنند ؟
ما چگونگی اختصاص دادن و آزادکردن یک Widget را می دانیم.ما برای این کار از عملگرهای new و delete استفاده می کنیم .
Widget *w = new Widget( arg );
// . . .
delete w;

برخلاف بیشتر عملگرها در C++ ، رفتار عملگر new نمی تواند با سربارگذاری تغییر کند . عملگر new همیشه یک تابع را بنام عملگر new برای فراهم کردن حافظه فراخوانی می کند ، سپس ممکن است ان حافظه را مقدار دهی اولیه کند . در مورد Widget ، نامبرده ، با استفاده از عملگر new موجب فراخوانی یک تابع عملگرnew خواهد شد که یک پارامتراز نوع size_t می گیرد ، سپس درخواست یک سازنده Widget روی حافظه ای که مقداردهی نشده است خواهد کرد که توسط عملگرnew برای ایجاد یک شئ Widget برگردانده شده است ...

 

بررسی شکست تخصیص حافظه

در اینجا چند خط کد برای بررسی اختصاص حافظه ی موفق نمایش داده شده است :


bool error = false;
String **array = new String *[n];
if( array ) {
for( String **p = array; p < array+n; ++p ) {
String *tmp = new String;
if( tmp )
*p = tmp;
else {
error = true;
break;
}
}
}
else
error = true;
if( error )
handleError();

این روش کدنویسی زحمت زیادی دارد ، اما ممکن است تلاش ما ارزش زیادی داشته باشد اگر ان توانایی نمایان ساختن همه ناتوانی های ممکن در تخصیص حافظه را داشته باشد ...

جایگزینی new و delete سراسری

جایگزینی نسخه های استاندارد و سراسری عملگر new ، عملگرdelete ، آرایه ی new ، یا آرایه ی delete هرگز عقیده ی خوبی نیست ، حتی با وجود اینکه استاندارد ان را مجاز می داند . نسخه های استاندارد عموما برای هدف کلی مدیریت حافظه بهینه شده اند ، و کاربر تعریف شده که جایگزین می شود بعید می رسد که ان را به خوبی انجام دهد .
هدف ویژه ی نسخه های عملگر new و عملگرdelete که رفتار متفاوتی را از نسخه های استاندارد پیاده سازی می کند احتمالا اشکالاتی داشته باشند ، چون که صحت تعداد زیادی از کتابخانه های استاندارد و کتابخانه های سه بخشی به پیاده سازی استاندارد پیش فرض این توابع وابسته است ...

 

 

Memory and Resource Management


C++ offers tremendous flexibility in managing memory, but few C++ programmers fully understand the available mechanisms. In this area of the language ,overloading , name hiding, constructors and destructors, exceptions, static and virtual functions, ...


Failure to Distinguish Scalar and Array Allocation

Is a Widget the same thing as an array of Widgets? Of course not. Then why are so many C++ programmers surprised to find that different operators are used to allocate and free arrays and scalars?
We know how to allocate and free a single Widget. We use the new and delete operators:

Widget *w = new Widget( arg );
// . . .
delete w;

Unlike most operators in C++, the behavior of the new operator can’t be modified by overloading. The new operator always calls a function named operator new to obtain some storage,...

 

Checking for Allocation Failure


Here’s some code that’s careful to check that every memory allocation succeeds:

bool error = false;
String **array = new String *[n];
if( array ) {
for( String **p = array; p < array+n; ++p ) {
String *tmp = new String;
if( tmp )
*p = tmp;
else {
error = true;
break;
}
}
}
else
error = true;
if( error )
handleError();


This style of coding is a lot of trouble, but it might be worth the effort if it were able to detect all possible memory allocation failures...

 

Replacing Global New and Delete


It’s almost never a good idea to replace the standard, global versions of operator new, operator delete, array new, or array delete, even though the standard permits it. The standard versions are typically highly optimized for general-purpose storage management, and user-defined replacements are unlikely to do better

Special-purpose versions of operator new and operator delete that implement different behavior from the standard versions will probably introduce bugs, since the correctness of much of the standard library and many third-party libraries depends on the default standard implementations of these functions.

A safer approach is to overload the global operator new rather than ...replace it... 

 


دانلود با لینک مستقیم


مدیریت حافظه و منابع Memory and Resource Management

مقاله Linua memory management on laryer machines

اختصاصی از ژیکو مقاله Linua memory management on laryer machines دانلود با لینک مستقیم و پر سرعت .

مقاله Linua memory management on laryer machines


مقاله Linua memory management  on  laryer machines

دانلود مقاله Linua memory management  on  laryer machines در 16 ص بافرمت WORD 

 

 

 

 

 

 

Abstract

مقداری زیادی از کارها به داخل زیر سیستم مدیرت حافظه در سریهای  کرنل l inux.2.5  منتقل شده است و نسبت به              تا (سیستم حافظه مجالس ) حالت پایداری بیشتری را در تنوعات زیادی از پارمان کاری دارد. و همچنین بیشتر مسائل مقیاس پذیری حل شده و منجر به عملکرد بیشتر mamgement    memory   بر روی ماشینهای بزرگبر ( با ram بیش از 1GB  یا دارای بیش از یک praccassor  یا هر دو ) شده است. بعضی از این تغییرات برای ماشینها ی کوچک نیز سودمند است و در سریهای کرنل 2..4  تقسیمات اصلی linux  به طور گسترده‌ای از کرنل mainline  بخصوص از محیط   um  منشعب شده است.

این مسئله باعث به وجود آمدن مداوم مسائلی و تلاش مضاعف به هدر رفته در ویژگیهای پیاده سازی می‌شود سریهای 2.5     گشته ( در آنها هم هست ). سریهای 2.4  تحت مدیریت  andrew   morton  است که بنیان مستحکم برای پیشرفتهای آتی فراهم می‌آورد. و همچنین پتانسیل بیشتری برای کار مشترک بیشتر ، این مقدار در صورت تغییرات که در سیستم 1inux    um    بهای 2.5  صورت گرفته است که به طور قابل ملاحظه‌ای ماشینهای بزرگبر را فشرده می‌کند      می‌کند و همچنین تغییراتی که برای آینده         می‌شوند را در بر می‌گیرد که بیشتر آنها در حال حاضر به عنوان قطعات جدا موچود می‌شوند ماشینهای بزرگبر همچنین باید از عهدة تعداد زیادی از فعالیتهای همزمان بر آیند که منظور من حد تا می‌باشد. به منظور سادگی و صراحت و اختیار ما ، ماشین l A 32  با mode   PAE  با طرح حافظه فرمان را در این مقاله در نظر می‌گیریم این محاسبات بر روی یک سیستم 16-cpu   numa-o   گرفته است.


دانلود با لینک مستقیم


مقاله Linua memory management on laryer machines