purecopy
ব্যবহারকারীর কনফিগারেশন বা তৃতীয় পক্ষের লাইব্রেরিতে কখনও প্রয়োজন হয় না । প্রকৃতপক্ষে, যখন কোনও সাধারণ ইম্যাক্স উদাহরণ থেকে কল করা হয় তখন এটি কোনও বিকল্প নেই । খাঁটি স্টোরেজ থেকে :
ইমাকগুলি নির্মিত এবং ডাম্প করা হচ্ছে এই ব্যতীত এই ফাংশনটি কোনও বিকল্প নেই ; এটিকে সাধারণত প্রিললোডড লিস্প ফাইলগুলিতে ডাকা হয়।
কিছু পটভূমি তথ্য অনুসরণ করা হয়।
খাঁটি স্টোরেজ
ইমাক্সের একটি দ্বি-স্তরের বিল্ড প্রক্রিয়া রয়েছে। এটি প্রথমে একটি সরল বাইনারি তৈরি করে এবং তারপরে এই বাইনারি চালায়, অন্তর্নির্মিত গ্রন্থাগারগুলির একটি নির্বাচিত সেট লোড করে এবং তারপরে প্রক্রিয়াটির একটি মেমরি চিত্র ফেলে দেয় এবং emacs
এই ডাম্প থেকে আসল বাইনারি তৈরি করে ।
এই সংশ্লেষিত প্রক্রিয়াটির কারণগুলি হ'ল ভাল পারফরম্যান্স এবং কম মেমরির ব্যবহার: প্রাক-লোডিং অপরিহার্য ইমাস লিস্প লাইব্রেরিগুলি দ্রুত প্রারম্ভিকরণের জন্য অনুমতি দেয়, কারণ পূর্বে লোড করা লাইব্রেরিগুলি অন্তর্নির্মিত লাইব্রেরিগুলি লোড করার জন্য আর কোনও আইও প্রয়োজন হয় না এবং মেমরির ব্যবহার হ্রাস করে না সমস্ত ইম্যাক্স উদাহরণগুলির মধ্যে ভাগ করা যায়।
এই নির্দিষ্ট মেমরি অঞ্চলটিতে পূর্ব-লোড লাইব্রেরি রয়েছে "খাঁটি সঞ্চয়স্থান" ” পূর্বোক্ত মেমরি ভাগ করে নেওয়ার জন্য এটি কেবলমাত্র খাঁটি, তাই "বিশুদ্ধ"। অতএব, purecopy
সাধারণ ইম্যাক্স দৃষ্টান্তগুলির কোনও বিকল্প নেই: এটি যাইহোক খাঁটি স্টোরেজে লিখতে পারে না। ফলস্বরূপ, খাঁটি স্টোরেজও আবর্জনা সংগ্রহ থেকে অব্যাহতিপ্রাপ্ত।
তবে প্রি-লোডেড লাইব্রেরিগুলির জন্য মেমরি চিত্র তৈরি এবং ডাম্প করার সময়, এই লাইব্রেরিগুলি purecopy
খাঁটি স্টোরেজগুলিতে বরাদ্দকরণের জন্য নির্দিষ্ট বিষয়গুলিকে "চিহ্নিত" করতে ব্যবহার করতে পারে , সাধারণত যেভাবে Emacs এর পুরো জীবনকালের জন্য প্রয়োজনীয় বস্তু ব্যবহৃত হয়।
খাঁটি স্টোরেজে স্ট্রিংগুলি মূলত গ্লোবাল স্ট্যাটিক ধ্রুবক স্ট্রিং। যেহেতু "make -k"
ইমাকস সেশনগুলি চালানোর ক্ষেত্রে প্রায়শই ব্যবহৃত হতে চলেছে (এটি সম্ভবত সর্বাধিক ব্যবহৃত সংকলন কমান্ড, এমনকি আজও), অপ্রয়োজনীয় পুনরায় বরাদ্দ এবং আবর্জনা সংগ্রহ এড়াতে এই স্ট্রিংটিকে অবিচলিত এবং স্থিতিশীল রাখতে বোধগম্য হয়।
বিশুদ্ধ সঞ্চয়ের এই ধারণা আরো কারণেই পরিবর্তন হয় .el
কিছু বিল্ট-ইন লাইব্রেরি (বিশেষতঃ ফাইল startup.el
, subr.el
এ গিয়ে Emacs আসলে লোড এরকম লাইব্রেরীর উৎস ফাইলগুলি:, এবং অন্যান্য) কোনো প্রভাব নেই। পরিবর্তে, এটির বাইনারিটিতে তাদের বাইট কোডটি রয়েছে এবং এটি একটি বিশেষ মেমরি অঞ্চল থেকে লোড করে।