moaminsharifi/fa-wiki-spell-checker huggingface dataset:
بَش یک پردازشگر دستور است که معمولاً در یک پنجرهٔ ترمینال اجرا می‌شود. این پوسته مانند همه پوسته‌های یونیکس، می‌تواند دستوراتش را از یک فایل بگیرد. همچنین این پوسته کلمات اساسی، قواعد دستوری، و بقیهٔ ویژگی‌های اساسی را از پوسته‌ی بورن کپی کرده‌است. ویژگی‌های دیگری مثل تاریخ از پوستهٔ سی و پوستهٔ کورن کپی شده‌است. بَش منطبق با استاندارد پازیکس است.
نام بَش سرنام Bourne-again shell در انگلیسی است که یک بازی با کلمات و ایهام است به این ترتیب که هم اشاره به پوستهٔ بورن می‌کند و هم به کلمهٔ اشاره دارد که به معنی «دوباره متولد شده» است.
یک حفرهٔ امنیتی موجود در پوستهٔ بَش از زمان ورژن ۱/۰۳ (اوت ۱۹۸۹)، معروف به «شوک پوسته» در سپتامبر سال ۲۰۱۴ کشف شد و به سرعت باعث یک سری حمله در پهنهٔ اینترنت شد. هنگامی که محل اشکال پیدا شد، به سرعت تغییرات به‌روزرسانی انجام شد و مسئله رفع شد.
برایان فاکس دهم ژانویهٔ ۱۹۸۸ از طرف ریچارد استالمن به کار گرفته شد. استالمن و بنیاد نرم‌افزار آزاد به قدری پروژه‌ی بَش را مهم و راهبردی می‌دیدند که خودشان این پروژه را سرمایه‌گذاری و تأمین اعتبار کردند.
فاکس ماه ژوئن ۱۹۸۹ ورژن ۰/۹۹ را به عنوان نسخه آزمایشی عرضه کرد و تا زمانی که توسط بنیاد نرم‌فزار آزاد تعدیل نیرو شد نگهدارنده‌ی اصلی این پوسته بود. بعد از او این مسئولیت به یکی دیگر از توسعه‌دهنده‌های اولیه‌ی بَش یعنی چت رامی سپرده شد.
از آن زمان، بَش با اختلاف زیاد از بقیه‌ی پوسته‌ها، به عنوان محبوب‌ترین پوسته میان کاربران یونیکس تبدیل شد. هم‌اکنون در بسیاری از نسخه‌های لینوکس و در مک او اس به عنوان پوسته پیش‌فرض موجود می‌باشد.
قواعد دستوری فرمان‌های بَش ابر مجموعه‌ی قواعد دستوری فرمان‌های پوسته بورن هستند. بَش از افزونه آکولادی، تکمیل خط فرمان، اشکال‌زدایی کردن ابتدایی، رفع و رجوع استثناها و بقیه‌ی موارد پشتیبانی می‌کند. بَش می‌تواند اکثریت بسیار بالایی از اسکریپت‌های پوسته‌ی بورن را بدون نیاز به تغییر اجرا کند. بش بعضی از ایده‌ها را از پوسته کورن (KSH) و بعضی را از پوسته‌ی سی (CSH) گرفته‌است.
سابقه‌ی فرمان‌های اجرا شده ویژگی بسیار خوب و پررنگ بش است که به کاربر اجازه می‌دهد، دستوراتی که قبلا اجرا شده را با فشار دادن دکمه بالا یا arrow up به ترتیب ببیند یا اجرا کند. پشته‌ی پوشه، متغیرهای و جایگزینیِ فرمانِ پازیکس هستند.
وقتی کاربر دستوری را وارد میکند و دکمهٔ را در پوستهٔ بَش فشار می‌دهد، تمامی دستور‌های مشابه نشان داده می‌شوند.
بَش به نسبت پوسته‌ی بورن قابلیت‌های بیشتری دارد. بَش توانایی انجام محاسبات اعداد کامل را بدون شاخه کردن فرایند جدید را دارد. بَش از فرمان و قاعدهٔ برای این منظور استفاده می‌کند. قواعد دستوری بَش تغییر مسیر ورودی و خروجی را ساده‌تر کرده. مثلاً بَش می‌تواند خروجی استاندارد و خطای استاندارد را با هم با عمل‌گر انجام دهد. معادل این عمل در پوستهٔ بورن است که کمی پیچیده‌تر از معادل بَش آن است. بش از عمل «جایگزینی فرایند» پشتیبانی می‌کند که با دستور انجام می‌شود. دستور جایگزینی فرایند در جایی به کار می‌رود که ورودی یا خروجی فرایندی جایگزین یک فایل در یک دستور دیگری که فایل را به عنوان ورودی یا خروجی بگیرد شود. مانند:
دستور sort فایل داده شده را مرتب‌سازی می‌کند، می‌تواند به جای اسم فایل خروجی یک فرایند دیگر را به همراه دستور جایگزین فرایند به عنوان یکی از پارامترهای ورودی بگیرد مثلاً به شکل زیر:
کلیدواژه‌ی تابع برای پوسته‌ی بش قابل تعریف اما برای پوسته‌های بورن، کورن و استاندارد پازیکس نامفهوم است. در صورتی که بَش تعریف تابع به آن صورت که در پوسته‌های بش و کورن انجام می‌شود را می‌پذیرد. به این خاطر و به دلایل دیگری، اسکریپت‌های بَش به جز در مواردی که عمداً و با احتیاط برای اجرا شدن در پوسته‌های بورن و کورن نوشته شده باشند، قابلیت اجرا در این پوسته‌ها را ندارند.
در فوریه ۲۰۰۹، بَش ویژگی آرایه‌های شرکت‌پذیر را معرفی و پشتیبانی کرد. آرایه‌های شرکت‌پذیر امکان پشتیبانی مصنوعی از آرایه‌های چند بعدی را فراهم می‌کنند به همان صورت که ابزار این‌کار را می‌کند. ورژن‌های چهار بَش به دلایل محدودیت‌های مربوط به پروانه در مک‌اواس به کار گرفته نشده‌اند.
بش می‌تواند بر خلاف پوسته‌ی بورن، بدون اجرا کردن پروسه‌ای بیرونی بر روی اعداد صحیح محاسباتی را انجام دهد. بش از شکل دستوری codice_1 و متغیر codice_2 برای اینکار استفاده می‌کند. شکل دستورهای بش بگونه‌ای است که امکان تغییر مسیر ورودی/خروجی را به شکل ساده‌ای به کاربر می‌دهد. به عنوان نمونه بش می‌تواند خروجی استاندارد (stdout) و خطای استاندارد (stderr) را توسط اپراتور <& در یک زمان تغییرمسیر دهد. همین کار را در پوسته بورن باید توسط codice_3 انجام داد که نسبت به بش سخت‌تر است. به دلیل این تفاوت‌ها اسکریپت‌های نوشته شده برای بش، به ندرت در پوسته‌ی بورن یا ksh (کورن شل) قابل اجرا هستند مگر اینکه در نوشتن آن‌ها به سازگاری فرمانهای مورد استفاده توجه شود. البته در حالت پازیکس خیلی بیشتر از پازیکس تبعیت می‌کند.The GNU Bash Reference Manual, for Bash, Version 4.1
ایدهٔ افزونه آکولادی خاصیتی است که از csh (پوسته‌ی سی) گرفته شده. این خاصیت برای تولید ترکیب‌ها استفاده می‌شود. متن‌های تولید شده الزاماً اسامی فایل‌ها نیستند. این خاصیت در پوستهٔ بورن وجود ندارد.
فرمان‌های زیر کاربرد افزونه آکولادی را نشان می‌دهند.
$ ls
file1 file2 file3 file4
همین‌طور توجه داشته باشید که افزونه آکولادی قبل از بسط اسم فایل صورت می‌گیرد:
xxx1 yyy2 zzz2 file4 a
xxx1 yyy2 zzz2
فرمان آخر فرمان لیست فایل‌هایی است که اسمشان شامل سه حرف دلخواه در ابتدا و یکی از شماره‌های یک، دو، سه و چهار برای حرف چهارم و آخر هست. فرمان بالا (فرمان آخر) دقیقاً مساوی فرمان زیر می‌باشد.
ls ???1 ???2 ???3 ???4
همان‌طور که در بالا می‌بینید افزونه آکولادی ابتدا فرمان را بسط داده و سپس افزونه اسم فایل اجرا شده و نتیجهٔ آن به فرمان () به عنوان ورودی داده می‌شود.
افزونه آکولادی هم لیستی از گزینه‌ها برای بسط را پشتیبانی می‌کند و هم یک بازه را می‌پذیرد:
در فرمان‌های بالا، فرمان اول یک لیست را گرفته و افزونه می‌دهد و فرمان دوم یک بازه را گرفته و افزونه می‌دهد. بازه می‌تواند شامل دو عدد یا دو حرف به عنوان ابتدا و انتها باشد.
در ورژن‌های جدید بَش، افزونه آکولادی بازه به همراه فاصله بین عناصر سری را پشتیبانی می‌کند.
x1 x2 x3 x4 x5 x6
x2 x4 x6
در فرمان بالا افزونه آکولادی سه عدد را گرفته که اولی از سمت چپ (۲) عدد یا حرف شروع‌کنندهٔ سری بوده، عدد دوم (۶) عدد انتهایی سری، و عدد سوم (۲) فاصلهٔ بین عناصر سری هستند.
وقتی بَش شروع به اجرا می‌شود، فرمان‌هایی را در فایل‌های مختلف مخفی (آنهایی که اسمشان با نقطه شروع می‌شود) اجرا می‌کند. با این‌که این فایل‌های راه‌اندازی شبیه به اسکریپت‌های عادی بَش هستند، مثل بقیهٔ اسکریپت‌های عادی نیازی به اجازهٔ دسترسی برای اجرا (پرچم ) ندارند.
بَش فایل را اگر وجود داشته باشد خوانده و اجرا می‌کند. این فایل در بسیاری از موارد فایل را صدا می‌زند.
بعد از خواندن و اجرا کردن این فایل، بش به ترتیب دنبال فایل‌های codice_4 و codice_4 و codice_4 می‌گردد و هرکدام را که اول از همه پیدا کرد و قابل خواندن بود اجرا می‌کند.
بَش فایل codice_4 را اگر وجود داشته باشد خوانده و اجرا می‌کند.
بش فایل codice_4 را خوانده و اجرا می‌کند. این مرحلهٔ آغازین را می‌تواند با گزینهٔ codice_4 جا انداخت و اجرا نکرد. گزینهٔ
codice_4 اما بَش را مجبور می‌کند به جای خواندن و اجرا کردن codice_4، فرمان‌های راه‌اندازی را از فایل codice_4 خوانده و اجرا شوند.
پوستهٔ بورن از codice_4 برای راه‌اندازی و تنظیم محیط (و انتقال و به ارث گذاشتن برای فرایندهای فرزند) استفاده می‌کند. بَش هم می‌تواند فایل codice_4 را در مرحلهٔ راه‌اندازی اجرا کند به شرط این‌که در فایل‌های codice_4 و codice_4 که مختص بَش هستند دستور زیر اجرا شود:
. ~/.prifle
برای ایجاد و حفظ هم‌سازی بین پوسته‌های بَش و بورن، می‌توان فرمان‌های ناهمساز با بَش را از فایل codice_4 به بیرون از این فایل منتقل کرد.
زیرپوسته‌های (پوسته‌هایی که از پوستهٔ والد منشعب می‌شوند) پوستهٔ ورودی بورن نمی‌توانند هم‌نام‌ها و توابعی را که در پوستهٔ ورودی تعریف شده‌اند را به ارث ببرند. اما با این‌که بَش امکان مستقیم این کار را نمی‌دهد، بَش خاصیتی دارد که با آن می‌توان به این هدف دست یافت.
زیرپوسته‌های بَش برای راه‌اندازی فایل codice_4 را اجرا می‌کنند. به این ترتیب برای این‌که همهٔ زیرپوسته‌ها هم‌نام‌ها و توابع را به ظاهر به ارث ببرند و بشناسند، باید در فایل codice_4 تعریف شوند.
پوستهٔ سی، هم فایل مخصوص برای اجرا به هنگام ورود (codice_4) و هم فایل مخصوص برای اجرا به هنگام خروج (codice_4) هستند. اما برای پوسته‌های بَش و بورن قضیه به این سرراستی نیست.
پوستهٔ بورن از هیچ‌کدام از فایل‌های بالا (یا مشابه آن‌ها) پشتیبانی نمی‌کند. برای شبیه‌سازی فایل مخصوص خروج باید از فرمان داخلی codice_4 و گرفتن سیگنال‌های وقفه استفاده کرد.
بَش برای خروج، راه‌کاری مشابه پوستهٔ سی دارد و فایل codice_4 برای اجرای فرامین هنگام خروج استفاده می‌شود. اما برای ورود، چون بَش ابتدا فایل codice_4 را پیدا کرده و اجرا می‌کند فایل codice_4 را اجرا نمی‌کند مگر فایل codice_4 وجود نداشته باشد، غیرقابل خواندن باشد، یا وجود داشته باشد و فایل codice_4 را از داخل فایل به صورت زیر فرابخواند.
بَش دو حالت اجرا دارد: اجرای دسته‌ای، و اجرای هم‌روند.
برای اجرای فرامین در حالت دسته‌ای، فرامین باید با حرف codice_4 جدا شوند یا در خط‌های جدا از هم نوشته شوند. مثال:
در مثال بالا هر موقع فرمان اول codice_4 اجرا شد، کامل شد و خارج شد فرمان دوم codice_4 اجرا خواهد شد.
برای اجرای هم‌روند دو فرایند، باید پوسته قابلیت اجرا کردن فرمان در پس‌زمینه را داشته باشد. بَش این قابلیت را داراست. برای اجرا کردن فرمانی در پس‌زمینه باید از علامت codice_4 به طریق زیر استفاده شود.
farman &
در فرمان بالا، بَش فرمانِ codice_4 را در پشت زمینه اجرا می‌کند. البته چون خروجی استاندارد و خطای استاندارد این فرایند تغییر مسیر داده نشده و هنوز به ورودی ترمینال اشاره می‌کنند، اگر فرایند مذکور چیزی به خروجی استاندارد یا خطای استاندارد خود را برای چاپ بفرستند ترمینال آن را دریافت و چاپ خواهد کرد.
برای این‌که مسیر استاندارد خروجی را از ورودی ترمینال منحرف کنیم و تغییر بدهیم از فرمان زیر استفاده می‌کنیم.
farman > file &
فرمان بالا خروجی استاندارد فرمان را به یک فایل تغییر مسیر می‌دهد. چنان‌چه فرایند نشأت گرفته از فرمان codice_4 به خروجی استاندارد خود چاپ کند، به جای ترمینال، حروف چاپ شده در فایل ذخیره خواهند شد. توجه کنید که در فرمان بالا ابتدا فایل پاک خواهد شد. برای الصاق کردن و چسباندن ورودی‌های جدید به انتهای فایل به جای پاک کردن محتوای قبلی فایل باید از فرمان زیر استفاده کرد.
farman » file &
فرمان بالا استاندارد خروجی فرایند ناشی از فرنان بالا را به انتهای فایل وصل می‌کند. اما اگر فرایند پیغام خطایی را به استاندارد خروجی خود برای چاپ بفرستد، هنوز این پیغام به ترمینال فرستاده خواهد شد. برای تغییر مسیر خطای استانداردِ یک فرایند از عملگرهای ویژه مانند فرمان زیر استفاده خواهد شد.
farman > file 2>1&
در فرمان بالا، عملگر ویژه‌ای به اضافهٔ اعداد یک و دو استفاده شده که دقیقاً همین عمل‌گر و همین اعداد ابتدائاً در پوستهٔ بورن معرفی و استفاده شدند و می‌شوند. عدد ۲ نماد خطای استاندارد و عدد یک نماد خروجی استاندارد می‌باشد و زیر فرمانِ codice_4 به این معناست که بَش خطای استاندارد را به همان‌جا تغییر مسیر بدهد که خروجی استاندارد تغییر مسیر داده شده.
بَش عمل‌گر جدیدی را معرفی کرد که فرمان بالا را کمی ساده‌تر می‌کند.
farman >& file &
برای تعامل مستقیم با فرایندها، آن‌ها باید در پیش‌زمینه باشند و فقط یک فرایند می‌تواند در پیش‌زمینه باشد.
بَش قابلیت مدیریت و تعامل با فرایندها را دارد. برای به پیش آوردن یک فرایند پس‌زمینه باید از این قابلیت بَش استفاده کرد. فرمان codice_4 شمارهٔ یک فرایند را گرفته و آن را به پیش زمینه می‌آورد و این امکان را می‌دهد که به طرق مختلف از جمله فرستادن سیگنال به فرایند با آن تعامل کرد.
$ farman &
[1]+ Running farman &
$ fg %1
farman
بَش با قابلیت مدیریت فرایندها این امکان را می‌دهد که کاربر به وسیلهٔ بعضی از فرامین سیگنال‌های کنترلی را به فرایند دلخواه بفرستد.
مثلاً برای به اصطلاح «کُشتن» یا تمام کردن یک فرایند باید به وسیلهٔ فرمان codice_4 به فرایند مورد نظر سیگنال‌ها مرتبط را فرستاد. مثلاً سیگنال codice_4 زمینهٔ «اتمام نرمِ» یک فرایند را فراهم می‌آورد.
اگر دو فرایند به عنوان زیر فرایند در بَش مشغول محاسبه بودند:
[1]- Running farman1
[2]- Running farman2
برای اتمام نرم فرایند شمارهٔ ۱، سیگنال شماره ۱۵ فرستاده می‌شود:
$ kill -15 %1
[1]- Terminated farman1
هم‌فرایندها در بَش و پوسته‌های مشابه به فرایندهایی گفته می‌شوند که با هم اجرا شوند و با هم از طریق «پایپ»‌ها ارتباط دارند.
یکی از راه‌های سادهٔ درست کردن دو هم‌فرایند در بَش به این ترتیب است:
$ mkfifo ney
$ cat farman1
cat ney
$ cat farman2
echo salam > ney
$ ./farman1 & ./farman2
[3] 13794
[3]+ Done ./farman1
میانبرهای گفته شده در زیر برای حالت پیش‌فرض (ایمکس) است، میانبرهای ویم را می‌توان توسط دستور codice_39 فعال کرد.
شیمی نظری علمی است که به توصیف پدیده‌های شیمیایی با استفاده از خواص فیزیکی مواد می‌پردازد. این حوزه از علم در سال‌های اخیر بیشتر در بخش‌هایی نظیر شیمی کوانتوم گسترش داشته‌است.
زیر شاخه‌های اصلی شیمی نظری عبارتند از:
چمچمال یا چمجمال دهستانی در استان کرمانشاه است که در بخش بیستون شهرستان هرسین واقع شده‌است. گویش مردم این دهستان کردی چمچمالی است. از روستاهای معروف آن می‌توان به بدربان، سفید چقا، تازه‌آباد و تپه خرس اشاره نمود. رودخانهٔ «دینور آب» نیز از این دشت عبور می‌کند.
بر پایه سرشماری عمومی نفوس و مسکن در سال ۱۳۹۵ جمعیت این دهستان ۱۲٬۴۹۹ نفر (در ۳٬۵۳۶ خانوار) بوده‌است.
در لغتنامه دهخدا در توضیح چمجمال اینگونه آمده‌است:لغتنامهٔ دهخدا
بانوی گازُر در شاهنامه همسر مردی رخت‌شور بنام گازُر است، که دایه و سرپرست داراب به‌شمار می‌آید توضیح اینکه در گذشته به کسانی که به شغل رخت شویی اشتغال داشته‌اند، اصطلاحاً گازُر می‌گفته‌اند. گازر و همسرش از قضا کودکی تازه متولد شده را از دست داده بودند و یافتن این طفل مرهمی بود بر داغ دل آنها. داستان بانوی گازر در شاهنامه بدین قرار است:
روزی از روزها، مرد گازر هنگام رخت‌شویی از رود نوزادی یافت، گازر و زنش که به تازگی نوزاد خویش را از دست داده بودند نوزاد جدید را به خانه برد و به همسرش بانو گازز سپرد تا او را به جای نوباوهٔ تازه از دست دادهٔ خود، بپرورد. نام کودک را که پسر بود، بر گرفته از آب آرام رود داراب نهادند. داراب کم کم بالید و بزرگ شد به جوان برومندی بدل گشت، امّا او که داستان کودکی خویش را نشنیده بود، در پی شناخت اصالت و نژاد خود بود و در این مورد پیوسته زن گازر را مخاطب قرار می‌داد و سرانجام چون پاسخی در خور از آن زن نگرفت، بر وی خشم آورد.
داراب، چنانکه در سرگذشت خودش آمده‌است، سرانجام به پادشاهی رسید و چون بر تخت شاهی نشست، گازر و بانو گازر را نزد خویش فراخواند آنان را گرامی داشت؛ و با هدایا و پیشکش‌های فراوان دوباره از کاخ رهسپارشان نمود. حکیم فردوسی در بیتی از شاهنامهٔ خویش، از بانوی گازُر چند بار سخن گفته‌است، که بیت زیر مربوط به داستان بالا، یکی از همان موارد است:
در کتاب قرآن‌مجید، فرعون مصر هر کودکی که از بنی‌اسرائیل متولد می‌شد آن را یافته و می‌کشت، روزیکه موسی علیه‌السلام از مادرش متولد شد مادر نگران بود مبادا دژخیمان فرعون او را بیابند و هلاک کنند به همین سبب به خدای خویش پناه برد و کودک را بخدا سپرد. وقتیکه موسی را در گهواره‌ای نهاد و آن را به رود آرام نیل سپرد دلش قرص بود که خداوند طفل را حفظ خواهد نمود.
روایت مشابه‌ای بدین مضمون به داراب ایرانی اختصاص دارد، داراب و مادرش همای از سلالهٔ هخامنشیان بودند و دوران قبل از ایشان کیش رسمی ایرانیان آیین مزدیسنا بود. بقول حکیم طوس فردوسی ازدواج پدر و دختر، یعنی بهمن و هما طرح یک آیین جدید بود که ربطی به آیین مزدیسنا نداشت. نام کورش، بزرگ خاندان هخامنشی در تورات سیروس نامیده شده و این به معنای آنست که این سلاله گرایش‌هایی به کیش مزبور داشتند و احتمالاً با کیش رسمی کشور یعنی کیش زرتشت به عداوت برخاستند. روایت به آب انداختن داراب توسط مادرش هما در شاهنامه همانند روایت موسی، این‌گونه نقل می‌شود:
سارا کانر یکی از شخصیت‌های اصلی مجموعه فیلم‌های نابودگر است که توسط جیمز کامرون ساخته شده‌است. وی با کایل ریس رابطه عاطفی داشته و مادر جان کانر رهبر مقاومت انسان‌ها می‌باشد. اولین حضور این شخصیت در نابودگر ۱۹۸۴ ساختهٔ جیمز کامرون بود.
ایفاگر نقش او در دو فیلم اول، فیلم چهارم (صدا)، فیلم ششم و تی ۲: سه بعدی نبرد در میان زمان لیندا همیلتون و در فیلم پنجم امیلیا کلارک است. در فیلم پنجم کودکی این شخصیت نیز توسط ویلا تیلور به تصویر کشیده شده‌است. همچنین در ایفا این شخصیت بر عهده لینا هیدی می‌باشد.
توجه: توضیحات زیر پایان تمام فیلم‌ها را لو می‌دهد.
سارا کانر ۱۹ ساله (با بازی لیندا همیلتون) زندگی عادی دارد و مشغول به کار است. اما دو نفر از آینده به خاطر او به زمان حال فرستاده می‌شوند. اولی توسط اسکای نت، نابودگر (با بازی آرنولد شوارتزنگر) رباتی که برای قتل او آمده و دیگری از طرف نیروی مقاومت انسان‌ها، کایل ریس (با بازی مایکل بین) که برای حفاظت از سارا در برابر نابودگر آمده. زیرا زنده ماندن سارا اهمیت زیادی دارد چون در آینده پسری به دنیا می‌آورد که اسکای نت را نابود می‌کند(جان کانر). سر انجام پس از درگیری‌های بین نابودگر و کایل، کایل می‌میرد و در آخر سارا کانر نابودگر نیمه جان را از پا درمی‌آورد. اما چند ماه بعد و در آخرین سکانس سارا را در حالی که از کایل جان کانر را حامله است می‌بینیم.
دوباره دو نفر از آینده به زمان حال فرستاده می‌شوند؛ ولی این بار هر دو نابودگر هستند، اولی نابودگر تی ۸۰۰ (مدل همان نابودگر فیلم قبل، با بازی آرنولد شوارتزنگر) و دیگری نابودگر تی-۱۰۰۰ (نابودگر پیشرفته جیوه ای، با بازی رابرت پاتریک)این بار هدف نابودگر محافظت از جان کانر است و تی ۱۰۰۰ قصد کشتن جان کانر را دارد. نابودگر و سارا کانر ۲۹ ساله (با بازی لیندا همیلتون)موفق به نابودی تی ۱۰۰۰ و نابودی آزمایشگاهی که در آن داشتند نابودگر را می‌ساختند می‌شوند. همهٔ امکاناتی که با آن می‌شد نابودگر را ساخت از بین رفته جز نابودگر تی ۸۰۰. به همین دلیل او خود را نابود می‌کند تا از رویش نابودگر را نسازند.
در این فیلم سارا کانر وجود ندارد زیرا لیندا همیلتون در این فیلم بازی نکرد و در این فیلم سارا کانر بر اثر سرطان خون مرده‌است.
در این فیلم تنها صدای ضبط شدهٔ سارا کانر(لیندا همیلتون) پخش می‌شود که جان کانر (با بازی کریستین بیل) آن را گوش می‌دهد و عکس سارا کانر در فیلم نشان داده می‌شود.
این بار امیلیا کلارک نقش سارا کانر را ایفا کرد. نابودگری با نام پاپز (با بازی آرنولد شوارتزنگر) در نه سالگی سارا از آینده به زمان حال سفر کرده بود و او را برای مقابله با نابودگرها آماده کرده بود. این درحالی اتفاق افتاده بود که سارا توسط نابودگر دیگری یتیم شده بود. کایل ریس نیز برای محافظت از سارا از آینده فرستاده می‌شود اما متوجه می‌شود که سارا از همه چیز خبر دارد و کاملاً آماده است. جان کانر توسط اسکای نت تغییر یافته و شخصیت منفی داستان است و کایل ریس و سارا و نابودگر سر انجام او را نابود می‌کنند.
این بار سارا کانر دوباره توسط لیندا همیلتون ایفا شد. پس از وقایع سارا فکر می‌کند که همه چیز راجع به نابودگران به پایان رسیده اما یک نابودگر (با بازی برت آذر و چهره دیجیتالی آرنولد) قبل از نابودی اسکا نت برای نابودی جان کانر فرستاده می‌شود و موفق می‌شود که او را به قتل برساند و سارا نمی‌تواند برایش کاری انجام دهد. اما پس از سال‌ها برای اولین بار با سارا کانر مسن ۵۵ ساله به همراه نابودگر مسن با نام کارل (همان قاتل جان، آرنولد شوارتزنگر) با گریس سرباز همراه شده و از دنیلا راموس در برابر رو- ۹ نابودگر پیشرفته محافظت کرده و در نهایت گریس و نابودگر در این راه جان خود را از دست می‌دهند و دنی با سارا همراه می‌شود که خود را برای اتفاقات آینده آماده کند.
اینبار لینا هیدی نقش سارا کانر را ایفا کرد. داستان حول و حوش می‌چرخد و شروع داستان از آنجایی است که سارا و جان(توماس دکر)به شهر جدیدی نقل مکان می‌کنند.
در دو فیلم اول و تی ۲: سه بعدی نبرد در میان زمان لیندا همیلتون این نقش را ایفا کرد و با نظر مثبت منتقدان همراه بود. اما این شخصیت در فیلم سوم حضور نداشت چون لیندا بازی در این فیلم را رد کرد، از آنجا که سارا کانر از شخصیت‌های اصلی دو فیلم قبلی بود، حذف این شخصیت از ضعف‌های داستانی فیلم سوم به‌شمار می‌رود. در فیلم چهارم صدای لیندا همیلتون و عکس آن در فیلم اول به نمایش کشیده می‌شود. در فیلم پنجم امیلیا کلارک این نقش را ایفا کرد و کودکی آن را ویلا تیلور بازی کرد. در فیلم ششم لیندا همیلتون در این نقش بازگشت که منتقدان این موضوع را از خوبی‌های فیلم دانستند. همچنین مادی کورلی (با چهره دیجیتالی لیندا همیلتون) نقش جوانی سارا را بازی کرد. در سریال تلویزیونی لینا هیدی این نقش را ایفا کرده‌است.
لیندا همیلتون به‌طور خلاصه نقش خود را برای بازی تی ۲ سه بعدی: نبرد در میان زمان، یک جذابیت در پارک تم ۱۹۹۶ در استودیوی جهانی تغییر داد. در این جاذبه که پس از وقایع فیلم دوم تنظیم شده‌است، سارا و جان برای جلوگیری از ایجاد اسکای نت وارد سایبرداین سیستمز می‌شوند، اما آنها توسط تی-۱۰۰۰ متوقف می‌شوند. جان و یک تی-۸۰۰ بعداً به آینده سفر می‌کنند، جایی که آنها موفق به از بین بردن اسکای نت می‌شوند، و جان برای بازگشت مجدد با سارا به زمان حال بازمی‌گردد.
ماشین دسترسی تصادفی موازی (PRAM) یک ماشین انتزاعی با حافظه اشتراکی است که توسط طراحان الگوریتم برای ارزیابی کارایی یا پیچیدگی الگوریتم مورد استفاده قرار می‌گیرد. PRAM موضوعاتی مانند همگامی و ارتباطات را نادیده می‌گیرد و به هر تعداد پردازنده (وابسته به حجم مسئله) در اختیار قرار می‌دهد. پیچیدگی الگوریتم برای مثال با (زمان x تعداد پردازنده)O محاسبه می‌شود.
نابودگر که با نام تی-۸۰۰ و مدل ۱۰۱ نیز شناخته می‌شود، یک سایبورگ خیالی در سری نابودگر است که جزو شخصیت‌های اصلی این مجموعه فیلم به‌شمار می‌رود. این شخصیت توسط جیمز کامرون و گیل آن هرد ساخته شده‌است. ماموریت‌های نابودگر توسط اسکای نت(skynet) به او می‌رسد که یکی از آنها قتل به‌طور ویژه برای کشتن جان کانر بود. روبات پیشرفته انسان نما که برای قتل انسان‌ها برنامه‌ریزی شده و دارای بدنی فلزی و ضد گلوله است که با بافت انسانی پوشیده شده. او قابلیت تغییر و تقلید صدا دارد. وزنش ۱۸۰ کیلو است و نیازی به خواب یا شارژ کردن خود ندارد و طبق گفته خود در ، ۱۲۰ سال عمر میکند.
اولین حضور شخصیت نابودگر به عنوان یک شخصیت منفی در فیلم نابودگر به کارگردانی جیمز کامرون بود. اما بعد از آن در سری فیلم‌های دیگر نابودگر او شخصیت غیر منفی دارد که علاوه بر اینکه قصد کشتن کسی را ندارد؛ بلکه مأموریت او مراقبت از افراد است.
ایفاگر این نقش در سه فیلم اول، فیلم پنجم، فیلم ششم و تی ۲ سه بعدی: نبرد در میان زمان آرنولد شوارتزنگر، رولاند کیکینگر در فیلم چهارم (با چهره دیجیتالی آرنولد) و برت آذر (با چهره دیجیتالی آرنولد) در نقش جوانی این شخصیت در فیلم پنجم و ششم است.
جیمز کامرون خالق سری نابودگر چنین تعریف می‌کند:
نابودگر اغلب با نام‌های مختلف "تی ۸۰۰" یا "تی ۸۵۰" یا "مدل ۱۰۱" شناخته می‌شود. در حقیقت "مدل ۱۰۱" اشاره به مدل‌هایی از نابودگر دارند که صورت آن‌ها شبیه آرنولد شوارتزنگر می‌باشد. "تی ۸۰۰" یا "تی ۸۵۰" اشاره به اسکلت فلزی نابودگر دارند.
نابودگر در فیلم اول (با بازی آرنولد شوارتزنگر) از سال ۲۰۲۹ توسط اسکای نت به سال ۱۹۸۴ برگردانده می‌شود تا زن جوانی به نام سارا کانر را به قتل برساند. زیرا سارا مادر جان کانر، کسی که اسکای نت را در آینده نابود می‌کند است. نیروی مقاومت انسان‌ها نیز شخصی به نام کایل ریس را برای حفاظت از سارا به گذشته می‌فرستد. کایل پدر جان کانر است. فیلم حول محور نبرد این دو فرستاده می‌گذرد. کایل با بمب خود ساخته اش کامیونی که نابودگر در حال رانندگی بود را منفجر می‌کند. این کار سبب مرگ نابودگر نشده و تنها بافت انسانی اش را نابود می‌کند. کایل دوباره با بمب خودساخته اش به نابودگر حمله کرده و بدن فلزی آن را از وسط به دو نیم می‌کند و خود می‌میرد. اما نابودگر با بالاتنه خود به سارا حمله می‌کند ولی او توسط پرس هیدرولیکی به دست سارا کانر نابود می‌شود. در آخرین سکانس فیلم هم کارگردان سارا کانر را که از کایل حامله است به تصویر می‌کشد.
در این فیلم یک نابودگر دیگر (باز هم با بازی آرنولد شوارتزنگر) به گذشته برمی‌گردد تا از جان کانر، رهبر آینده مقاومت انسان‌ها در کودکی برابر یک نابودگر پیشرفته جیوه ای به نام تی-۱۰۰۰ (با بازی رابرت پاتریک) محافظت کند. نابودگر از نقش منفی فیلم قبل به قهرمان داستان این فیلم تبدیل می‌شود و موفق می‌شود رابطه پدر-فرزندی با جان کانر برقرار کند به طوری که سارا کانر (با بازی لیندا همیلتون) اقرار می‌کند که این شی (نابودگر) بهترین پدر دنیا است. جان نیز گاهی نابودگر را جلوی دیگران عمو باب خطاب و معرفی می‌کند. سارا کانر به همراه نابودگر آزمایشگاهی که برای ساخت نابودگرها در آن استفاده می‌شد را نابود می‌کند و تمام تکنولوژی ساخت نابودگر را از بین می‌برد. در انتها پس از نابود کردن تی ۱۰۰۰، نابودگر برای اینکه از تکنولوژی اش برای ساختن نابودگرها در آینده استفاده نشود (زیرا تبدیل به تنها بازمانده از نابودگرها شده بود و تنها از طریق آن می‌شد نابودگرها را در آینده ساخت)، با اختیار خودش درخواست می‌کند نابود شود و از بین می‌رود.
پس از اینکه یک نابودگر مؤنث به نام «تی ایکس»(کریستینا لوکن) برای کشتن جان کانر جوان به گذشته برمی گردد، همسر جان کانر کیت بروستر، نابودگری که جان را در آینده کشته بود (آرنولد) را دوباره فعال می‌کند و برای محافظت از جان به گذشته می‌فرستد. جان کانر خیال می‌کند که همه چیز درمورد نابودگر به پایان رسیده و با مرگ مادرش سارا کانر از سرطان خون، حال یک زندگی عادی دارد. اما متوجه می‌شود که همه چیز تمام نشده و او و مادرش فقط آن را به عقب انداخته‌اند. نابودگر در این فیلم موفق می‌شود جان کانر و همسرش را نجات بدهد و با استفاده از سلول هیدروژنی خودش، تی ایکس را نابود کند که این امر به نابودی خودش نیز می‌انجامد.
در این فیلم، نابودگر (با بازی رولاند کیکینگر و صورت دیجیتالی آرنولد) به عنوان یک ضدقهرمان فرعی ظاهر می‌شود. نابودگر به جان کانر در مقر اسکای نت حمله می‌کند و جان کانر (با بازی کریستسین بیل)با شلیک نارنجک به او بافت انسانی چهره اش را از بین می‌برد. با اینحال ترمیناتور موفق می‌شود صورت جان کانر را زخمی‌کند و شی فلزی را در قلب او فروکند. سرانجام نابودگر توسط مارکوس نابود می‌شود.
این فیلم با ترکیبی از نابودگر ۱ و نابودگر ۲ آغاز می‌شود. بعد از اینکه نابودگر فیلم اول (با بازی برت آذر و چهره دیجیتالی آرنولد) به گذشته برمی گردد تا سارا کانر را به قتل برساند اما (به دلیل عوض شدن تاریخ گذشته و وقوع تاریخ جایگزین) توسط نابودگری مسن تر به نام پاپز (با بازی آرنولد) مورد حمله قرار گرفته و غیرفعال می‌شود. پاپز نابودگری انسان‌ها که از آینده‌ای نامعلوم برای حفاظت از سارا کانر به زمان ۹ سالگی وی سفر کرده‌است و او را برای مقابله با نابودگران آماده کرده‌است. کایل ریس نیز از آینده برای محافظت از سارا کانر آمده اما متوجه می‌شود که سارا کاملاً آماده است. تی-۱۰۰۰ نیز از آینده برای قتل سارا کانر آمده ولی پاپز او را نابود می‌کند. ماجرای فیلم حول محور نابودی اسکای نت سپری می‌شود. جان کانر که توسط اسکای نت تغییر یافته و تبدیل به نابودگر تی-۳۰۰۰ شده و شخصیت منفی داستان است، به شخصیت‌های فیلم (سارا و پاپز و کایل ریس) حمله می‌کند. سرانجام در پایان فیلم جان کانر توسط پاپز نابود می‌شود و پاپز تبدیل به تنها نابودگر مسافر زمان می‌شود که در پایان فیلم زنده می‌ماند.
پس از وقایع ترمیناتور۲،سارا کانر (با بازی لیندا همیلتون)با عوض کردن سرنوشت سبب مرگ پسر خود، جان کانر توسط نابودگر (با بازی برت آذر با چهره دیجیتالی آرنولد) می‌شود. سارا کانر اسکای نت را نابود کرده و دیگر هیچ مأموریتی برای نابودگر فرستاده نمی‌شود. نابودگر پس از مرور زمان و زندگی با انسان‌ها کمی انسانیت را درک کرده و حال یک ربات مسن با نام کارل (آرنولد شوارتزنگر)است که با آلیشا و متیو در حال زندگی است و با مراقبت از این زن و پسرش مأموریتی به خود داده و قتل را کنار گذاشته‌است، در واقع تشکیل خانواده داده. اما دوباره با سارا کانر به همراه دَنی (کسی که قرار است راه جان کانر را ادامه دهد، ناتالیا رئیس) و گِرِیس (کسی که از آینده برای محافظت از دنی آمده، مک کنزی دیویس)برخورد می‌کند. نابودگر به خانواده اش می‌گوید که اینجا را ترک کنند زیرا دیگر امن نیست و با آنها خداحافظی می‌کند زیرا دوباره باید به دوران قبل خود بازگردد. حال آنها برای مرگ رِو۹(روباتی پیشرفته که برای قتل دنی از آینده آمده، گابریل لونا) با هم همدست شده و در نهایت او را نابود می‌کنند و این کار سبب مرگ کارل و گریس می‌شود. محوریت این فیلم بر شخصیت‌های سارا کانر، دنی و گریس است و کارل از اواسط داستان وارد شخصیت‌های اصلی می‌شود.
آرنولد شوارتزنگر نقش خود را از نابودگر ۲ در این جذابیت Universal Studios ، که در آن او و جان کانر تلاش برای متوقف کردن روز داوری بود ، تکرار کرد. آنها برای جلوگیری از اتمام اسکای نت به آینده سفر می کنند و به سایبرداین نفوذ می کنند.
در ۲۱ آگوست ۲۰۱۹ ، توسط توسعه دهنده NetherRealm Studios اعلام شد که یک نابودگر تی-۸۰۰ به عنوان شخصیت قابل پخش مهمان در مورتال کمبت ۱۱ ، یک بازی جنگی 2.5D که قبلاً در همان سال منتشر شد ، اضافه می شود. این شخصیت یکی از شش شخصیت در مجموعه بازی های Kombat Pack در کنار شخصیت های مهمان دیگر از جمله و جوکر است که دارای محتوای قابل بارگیری است. چهره نابودگر در این بازی مانند فیلم طراحی شده است.
نابودگر در بازی ویدیویی استراتژی MMO موبایل ، نابودگر جنسیس: جنگ آینده ظاهر می شود که توسط Plarium ایجاد شده است.
نابودگر در هیچ کمیکی وجود ندارد
در سه فیلم اول سری نابودگر این نقش توسط آرنولد شوارتزنگر ایفا شد ولی در سال ۲۰۰۹ به دلیل اینکه آرنولد فرماندار ایالت کالیفرنیا بود نتوانست در فیلم حضور داشته باشد و رولاند کیکینگر این نقش را ایفا کرد و با جلوه‌های ویژه چهره آرنولد (فیلم نابودگر محصول ۱۹۸۴) را برای وی می‌گذارند. در سال ۲۰۱۵ در فیلم آرنولد در نقش نابودگری مسن (پاپز) برگشت با اینحال نقش نابودگر فیلم اول و جوانی شخصیت پاپز توسط برت آذر (مجدداً با چهره دیجیتالی آرنولد) ایفا شد. آرنولد در فیلم ششم نابودگر نیز نقش نابودگری مسن را با نام (کارل) ایفا می‌کند.https://www.youtube.com/watch?v=28r0uWx8g3Ahttps://movieweb.com/terminator-reboot-t-800-arnold-schwarzenegger-human-character/ برت آذر مجدداً در نقش جوانی نابودگر برمیگردد.
بانوی گُردوی، در شاهنامه نام همسر گردوی است که نامهٔ گردوی را با مُهر خسروپرویز به نزد بانو گردیه برد تا او را به کشتن همسرش گستهم ترغیب کند سپس به عقد خسروپرویز در آید. گردیه خواهر بهرام چوبین و گردوی محسوب می‌شد. حکیم فردوسی در این بیت شاهنامه که آن را از قول گردوی یعنی همسر این زن بیان کرده، به وی اشاره‌ای تلویحی دارد:
تابع هش یا تابع درهَمَک‌ساز یا تابع چکیده‌ساز به هر رویه خوش تعریفالگوریتم یا تابع ریاضی می‌گویند که حجم زیادی از داده (احتمالاً حجم نامشخصی از داده) را به یک عدد طبیعی تبدیل کند. عدد طبیعی حاصل از تابع درهم‌سازی به عنوان اندیس یک آرایه مورد استفاده قرار می‌گیرد. مقادیر حاصل از این تابع را معمولاً مقدار هش یا فقط هش یا درهَمَک می‌خوانند. این توابع کاربردهای وسیعی در علوم کامپیوتر از جمله حفظ یکپارچگی داده‌ها دارند.
توابع درهم‌سازی بیشتر برای سرعت بخشیدن در جستجوی جدول‌های، فشرده‌سازی داده‌ها، درج یا حذف برای مجموعه پویایی که تعداد عناصر آن در طول زمان تغییر می‌کند، استفاده می‌شوند مانند جستجوی چیزی در یک پایگاه داده، تشخیص رکوردهای تکراری در حجم زیاد داده یا کشیدگی‌های مشابه در دنباله دی‌ان‌ای (DNA) و بسیاری کاربردهای مشابه. در این مقاله دربارهٔ داده ساختاری به نام جدول درهم‌سازی و روش درهم‌سازی صحبت می‌کنیم که با طراحی درست همه این اعمال را در بدترین حالت و نیز در حالت میانگین با هزینهٔ انجام می‌دهد.
فرض کنید کلیدها اعداد صحیحی از یک تا ۱۰۰ باشند و حدود ۱۰۰ رکورد وجود دارد. یک روش کارآمد برای مرتب‌سازی رکوردها، ایجاد آرایه S با ۱۰۰ عنصر و نگهداری رکوردی با کلید i در [S[i است. بازیابی، بدون درنگ صورت می‌پذیرد و مقایسه کلیدها صورت نمی‌پذیرد. اگر حدود ۱۰۰ رکورد وجود داشته باشد و کلیدها، شماره‌های شناسایی ۹ رقمی باشند، همین راهبرد را می‌توان به کار برد ولی به لحاظ حافظه، کارایی بسیار کمی دارد زیرا آرایه‌ای با یک میلیارد عنصر برای نگهداری تنها ۱۰۰ رکورد مورد نیاز است. به طریق دیگر، می‌توانیم آرایه‌ای با تنها ۱۰۰ عنصر که از ۰ تا ۹۹ اندیس‌گذاری می‌شود، ایجاد کنیم و هر کلید را به مقداری میان ۰ تا ۹۹ درهم‌سازی کنیم. تابع درهم‌سازی تابعی است که هر کلید را به یک اندیس تبدیل می‌کند و استفاده از تابع درهم‌سازی در مورد یک کلید خاص را «کلید درهم‌سازی» می‌گویند. در مورد شماره‌های شناسایی، یک تابع درهم‌سازی ممکن، عبارت‌است از:
(٪ به معنای باقی‌مانده تقسیم کلید بر ۱۰۰ است) این تابع صرفاً دو رقم آخر کلید را بازمی‌گرداند. اگر یک کلید درهم‌سازی، به i درهم‌سازی شود، کلید و رکورد آن را در [S[i نگهداری می‌کنیم. این راهبرد کلیدها را به ترتیب نگهداری نمی‌کند، یعنی این تابع فقط در صورتی قابل استفاده‌است که هرگز نیاز به بازیابی کارآمد داده‌ها به صورت ترتیبی نباشد. اگر نیاز به این کار باشد، یکی از روش‌های بحث شده در قبل را باید به کار برد.
اگر هیچ دو کلیدی به یک اندیس یکسان درهم‌سازی نشوند، این روش به خوبی عمل می‌کند. ولی هنگامی که تعداد قابل ملاحظه‌ای کلید وجود داشته باشد، به ندرت چنین می‌شود. برای مثال، اگر ۱۰۰ کلید وجود داشته باشد تعداد حالاتی که هیچ دو کلیدی به یک اندیس یکسان درهم‌سازی نشوند نسبت به تعداد حالاتی که هر کلید به هر یک از ۱۰۰ اندیس درهم‌سازی شود، ، عبارت است از:
در آدرس‌دهی مستقیم فرض می‌کنیم که مجموعه جهانی U نسبتاً کوچک است و که m در آن خیلی بزرگ نیست، برای نمایش پویایی از این عناصر از آرایه به نام جدول آدرس‌دهی مستقیم استفاده می‌کنیم که در درایه iام تنها عنصری با کلید i می‌تواند قرار گیرد و درایه‌های دیگر خالی یا null هستند. اما هنوز این مشکل وجود دارد که این روش برای mهای بزرگ پاسخگو نیست و برای حل آن از جدول درهم‌سازی استفاده می‌شود.
تقریباً مطمئن هستیم که حداقل دو کلید به یک اندیس درهم‌سازی می‌شوند. چنین رویدادی را برخورد یا تصادف می‌گویند. راه‌های گوناگونی برای برطرف‌کردن در برخوردها وجود دارد. یکی از بهترین راه‌ها، استفاده از درهم‌سازی باز (یا آدرس‌دهی باز) است. برای درهم‌سازی باز، باکتی (سطل) برای هر مقدار درهم‌سازی ممکن ایجاد می‌کنیم و همه کلیدهایی را که به مقدار موجود در یک باکت درهم‌سازی می‌شوند، در باکت مربوط به آن قرار می‌دهیم. درهم‌سازی باز را معمولاً با لیست‌های پیوندی پیاده‌سازی می‌کنند. برای مثال، اگر درهم‌سازی را به دو رقم آخر اعداد انجام دهیم، آرایه‌ای از اشاره‌گرهای باکت را ایجاد می‌کنیم که از ۰ تا ۹۹ اندیس‌گذاری می‌شوند. همه آن کلیدهایی که به i درهم‌سازی می‌شوند در یک لیست پیوندی که از [Bucket[i شروع می‌شود، قرار داده می‌شوند این نکته در شکل نشان داده شده‌است.
روش دیگری نیز برای برطرف کردن برخورد به نام روش زنجیره‌ای وجود دارد که در ادامه بیان خواهد شد.
لازم نیست تعداد باکت‌ها با تعداد کلیدها برابر باشد. برای مثال، اگر به دو رقم آخر درهم‌سازی کنیم، تعداد باکت‌ها باید ۱۰۰ باشد؛ ولی، می‌توانیم ۱۰۰۰، ۲۰۰، ۱۰۰ یا هر تعداد کلید را نگهداری کنیم. البته هر چه تعداد کلیدهایی که نگهداری کنیم بیشتر باشد، احتمال وجود برخورد بیشتر است. اگر تعداد کلیدها بزرگتر از تعداد باکت‌ها باشد، حتماً برخورد داریم. چون باکت فقط یک اشاره‌گر را نگهداری می‌کند، فضای چندانی با اختصاص دادن به باکت اتلاف نمی‌شود؛ بنابراین، غالباً منطقی است که تعداد باکت‌ها به اندازه تعداد کلیدها باشد.
هنگام جستجو به‌دنبال یک کلید، باید یک جستجوی ترتیبی در میان باکت (لیست پیوندی) حاوی کلید انجام دهیم. اگر همه کلیدها در یک باکت درهم‌سازی شوند، جستجو تا حد جستجوی ترتیبی تنزل می‌یابد. احتمال رخ‌دادن آن چقدر است؟ اگر ۱۰۰ کلید و ۱۰۰ باکت داشته باشیم، احتمال آن‌که کلیدها همگی به یک باکت ختم شوند، عبارت است از:
بنابراین، تقریباً برای همه کلیدها غیرممکن است که به یک باکت ختم شوند. دربارهٔ احتمال آن که ۷۰، ۸۰، ۹۰ یا هر تعداد دیگری از کلیدها به یک باکت ختم شوند، چه می‌توان گفت؟ هدف اصلی ما این است که بدانیم احتمال آن که درهم‌سازی، در حالت میانگین به جستجویی بهتر از جستجوی دودویی بینجامد، چقدر است. نشان می‌دهیم که اگر به قدر کافی بزرگ باشد، این نیز تقریباً یک قطعیت به‌شمار می‌رود؛ ولی نخست نشان می‌دهیم که با درهم‌سازی، کارها چقدر بهتر می‌شود.
بدیهی است بهترین حالتی که ممکن‌است رخ دهد این است که کلیدها به‌طور یکنواخت در باکت‌ها توزیع شود؛ یعنی، اگر n کلید و m باکت وجود داشته باشد، هر باکت حاوی n/m کلید می‌شود. در واقع هر باکت دقیقاً هنگامی حاوی n/m کلید می‌شود که n مضرب m باشد. اگر چنین نباشد، یک توزیع نسبتاً یکنواخت خواهیم داشت. قضیه‌های زیر نشان می‌دهد که وقتی کلیدها به‌طور یکنواخت توزیع شده باشند، جه اتفاقی می‌افتد. برای سادگی، آن‌هارا برای توزیعی دقیقاً یکنواخت بیان می‌کنیم (یعنی برای موردی که n مضربی از m باشد).
در روش زنجیره‌ای عناصری را که به وسیله تابع درهم‌سازی به یک درایه از جدول درهم‌سازی- مثلاً iS- نگاشته می‌شوند به صورت یک لیست خطی یک‌سویه درمی‌آوریم و آدرس شروع آن را در همان درایه، یعنی قرار می‌دهیم. در حالت کلی عناصر با کلیدهای مختلف k که مقدار آن‌ها برابر است در لیست پیوندی قرار می‌گیرند و درایه‌های خالی جدول هم لیست‌های تهی هستند، به چنین جدولی، جدول درهم‌سازی با روش زنجیره‌ای می‌گوییم. در این روش اعمال درج در زمان انجام می‌شود، اما عمل جستجو و حذف با یک عمل جستجوی عنصر همراه است که در بدترین حالت هزینه‌ای متناسب با طول لیست دارد.
یک تابع درهم‌سازی خوب تابعی است که ساده و یک‌نوا باشد، در ادامه یکی روشهای سادهٔ مختلف را برای طراحی تابع درهم‌سازی را بیان می‌کنیم.
در این روش ابتدا کلید k را در یک عدد ثابت A که است ضرب کنیم و قسمت اعشاری آن را بدست آوریم. یعنی:
فرض کنید که کلمهٔ کامپیوتر w بیتی است و k در یک کلمه جای می‌گیرد. A را طوری انتخاب می‌کنیم که برابر باشد، که در آن s یک عدد صحیح در محدودهٔ باشد. ابتدا k را در عدد صحیح w بیتی ضرب می‌کنیم و حاصل ضرب یک عدد 2w بیتی به صورت است که کلمهٔ پر ارزش و کلمهٔ کم‌ارزش حاصل ضرب است. عدد p بیتی تابع درهم‌سازی مورد نظر، p بیت پرارزش است.
اگر دو رکورد در توابع درهم سازی به یک مکان در فایل انتقال یابند به آن برخورد می‌گویند. روش ایدئال برای مقابله با برخوردها این است که بتوان الگوریتم تبدیلی پیدا کرد که به‌طور کلی از وقوع برخوردها جلوگیری کند.
یکی از راه‌های جلوگیری از برخورد استفاده از روش وارسی خطی است.
روش وارسی خطی با داشتن یک تابع در هم ساز کمکی به نام از تابع زیر برای درهم سازی استفاده می‌کند:
formula_3 به ازای i = ۰ , ۱ , … m-1
به ازای یک کلید k، ابتداformula_4 را وارسی می‌کنیم سپس به formula_5 و بعد به formula_6 می‌رویم و این کار را به صورت حلقوی ادامه می‌دهیم تا به formula_7 برسیم. در این حالت فقط m دنبالهٔ وارسی مجزا تولید می‌شود.
درهم سازی دوگانه یک روش وارسی است که در آن توابع در هم سازی به صورت زیر است:
که در آن توابع h و g تابه‌های درهم ساز کمکی هستند. اولین وارسی در formula_9 انجام می‌شود و وارسی‌های بعدی به درایه‌ای با فاصله formula_10 می‌رود. مثالی از این درج در شکل زیر آمده‌است، در این مثال، m=۱۳ و و است.
چون h(14) = ۱ و g(14) = ۴ است بنابراین کلید ۱۴، پس از آنکه درایه‌های ۱ و ۵ وارسی شده و پر بودند در درایهٔ خالی ۹ درج می‌شود.
در طراحی این درهم سازی باید مقدار formula_11 نسبت به m اول باشد تا اینکه کلیهٔ درایه‌های جدول وارسی شوند. یک روش مناسب انتخاب m به صورت توان ۲ و طراحی g به طوری است که همیشه یک عدد فرد تولید کند. یک روش دیگر آن است که m عدد اول باشد و g همیشه یک عدد صحیح و مثبت کوچکتر از m را تولید کند.
درهم سازی دوگانه نسبت به وارسی خطی و وارسی درجهٔ ۲ بهتر عمل می‌کند، زیرا به تعداد
در هنگام استفاده از توابع درهم سازی اگر تابعی که مورد استفادهٔ ماست توسط کاربر فهمیده شود، کاربر می‌تواند داده‌هایش را طوری وارد کند که تعداد برخوردها زیاد باشند. برای جلوگیری از این اتفاق، از درهم سازی سراسری استفاده می‌کنیم.
یک خانواده از توابع درهم ساز به اسم H را فرض کنید.
می‌گوییم H یک خانواده از توابع درهم ساز سراسری است اگر: در ازای هر دو کلید k1 و k2 که عضو مجموعهٔ کلیدهای مورد نظر ما هستند، تعداد توابع درهم ساز مانند h که عضو H هستند به طوری که formula_12 حداکثر برابر formula_13 باشد.
هنگامی که کاربر مجموعه‌ای از داده‌ها را وارد می‌کند به صورت تصادفی یکی از توابع درهم سازی را انتخاب می‌کنیم و ورودی‌ها را با استفاده از آن تابع در حافظه ذخیره می‌کنیم. در این صورت دیگر کاربر نمی‌تواند حدس بزند که چه تابعی انتخاب شده و در نتیجه نمی‌تواند مقادیر ورودی را طوری تعیین نماید که تعداد برخوردها زیاد باشد.
گاهی ما در درهم‌سازی با کلیدهای ایستا- که از قبل معلوم هستند- سروکار داریم، در این حالت یک روش درهم‌سازی را کامل می‌نامیم اگر در بدترین حالت تعداد دسترسی‌ها به حافظه برای یک عمل جستجو باشد. ایدهٔ اصلی این نوع درهم‌سازی استفاده از دو سطح درهم‌سازی و یک تابع درهم‌سازی سراسری برای هر سطح است.
در روش‌هایی که تا کنون برای درهم‌سازی بحث کرده‌ایم فرض بر می‌شود که تعداد عناصر حداکثر برابر اندازهٔ جدول- روش باز- یا تقریباً برابر آن- روش زنجیره‌ای- است در حالی که در بسیاری از مواقع تعداد عناصر از پیش مشخص نیست و نمی‌توان کران بالای خوبی برای اندازهٔ جدول درهم‌سازی پیش‌بینی کرد که باعث اتلاف حافظه نشود.
برای حل این مشکل از روش درهم‌سازی پویا استفاده می‌شود که در آن اندازه جدول متناسب با نیاز متغیر است؛ که برای تغییر اندازه جدول نیز باید هزینه کنیم اما نشان داده شده است که حتی با هزینه لازم برای تغییر اندازه جداول همچنان کل هزینه برابر
می‌ماند.
بانوی مَهبود در شاهنامه عنوان همسر مهبود وزیر انوشیروان است، این بانو به صورت کدبانو معرفی شده‌است، غذای شاه را در سه کاسهٔ زرین می‌آراست و دو پسرش طبق غذا را به نزد پادشاه می‌بردند.
زروان که پرده‌داری پیر در بارگاه کسری انوشیروان بود ولی به مهبود رشک می‌ورزید، او به یاری مردی جهود، با نیرنگ و افسون کاسهٔ شیر شاه را به زهر آلوده کرد و به شاه گزارش داد که بانوی مهبود به تحریک همسرش مهبود، با زهرآلود ساختن خوراک شاه قصد جان وی را کرده‌است. عاقبت پسران مهبود، با نوشیدن شیر زهرآگین جان باختند و شاه فرمان داد تا مهبود و همسرش را به خواری و ذلت کشتند. فردوسی توصیف این کدبانوی به ناروا جان داده را، در شاهنامهٔ خویش چنین می‌آغازد:
زَهر (به انگلیسی: Venom)، نوعی سم است که در بدن جانوران ساخته می‌شود. در بافت یا غده‌ای اختصاصی در بدن جانور، تولید و ذخیره می‌شود. این غده یا بافت اغلب به دستگاه ویژه تزریق یعنی نیش و دندان متصل است. زهر ممکن است هم در جانوران شکارچی و هم در جانوران غیر شکارچی، در مهره‌داران و در بی‌مهرگان وجود داشته باشد. دست‌کم چهار نوع مکانیسم مختلف شامل بافت‌مردگی، سمیت سلولی، نوروتوکسین و میوتوکسین گونه‌های جانوری مختلف شناسایی شده‌است.
زهر نه تنها از حیوانی به حیوان دیگر متفاوت است، بلکه حتی در یک گونه نیز بسته به سن، فصل، دمای محیط و منطقه جغرافیایی و نوع تغذیه می‌تواند دچار تغییراتی شود.2. Stephen P. Mackessy. Handbook of Venoms and Toxins of Reptiles. United States of America: CRC Press.2010.
استفاده از زهر در طب قدیم برای درمان بیماری‌های مختلف از جمله دردهای مفصلی، بیماری‌های عفونی، و بیماری‌های پوستی رواج داشته‌است بر اساس منابع اولین بار ۳۸۰ سال قبل از میلاد مسیح در یونان باستان از زهر برای درمان بیماری‌ها استفاده شد و در طول امپراتوری روم، شواهدی وجود دارد که از سم برای ساخت داروهایی جهت درمان تب و زخم و ساخت پادزهرها استفاده شده‌است. در این میان زهر زنبور عسل از جایگاه ویژه ای در پزشکی برخوردار است. به واقع شواهد و قرائن نشان دهنده این نکته است که بشر در قرون قبل از میلاد با درمان از طریق بهره‌گیری از زهر زنبور آشنا بوده‌است به عنوان نمونه بابلی‌ها، مصری‌ها، ایرانیان و رومی‌ها از جمله اقوامی بودند که از زهر زنبور عسل به منظور درمان امراض گوناگون استفاده می‌کردند در حقیقت می‌توان تاریخچه استفاده از این شیوه درمان را در زمان‌های بسیار قدیم و حدود ۳ هزار سال قبل از میلا د رهگیری کرد. زمانی که مصریان و یونانیان باستان از گزش زنبور زنده برای درمان بیماری‌های روماتیسمی استفاده می‌کردند. اما امروزه این شیوه درمانی به عنوان یک شاخه خاص پزشکی آلترناتیو، طیف وسیعی از بیماری‌ها را درمان می‌کند. از زهر زنبور در درمان بیماری‌هایی همچون ایم اس (MS)، نقرس، عفونت، سوختگیها، ترمیم زخمها، ورمهای مفصلی روماتیسمی، پلی آرتریت‌ها، دردهای مفصلی پراکنده و روماتیسم می‌باشند اولین مطالعه مدرن زهر در علم پزشکی در اواخر قرن نوزدهم توسط آلبرت کالمت انجام شد. این پژوهشگر در یک مطالعه زهر را به حیوانات برای تولید پادزهر تزریق کرد و پس از آن تحقیقات دیگری در این زمینه انجام شد در طب مدرن از زهر به عنوان یکی از مواد در ساخت داروهای مختلف برای بیماری‌های سرطان، التهاب مفاصل (آرتریت) و دیگر التهابات رماتیسمی استفاده می‌شود که تاکنون تحقیقات زیادی بر روی این ماده ارزشمند دارویی انجام گرفته‌است
مناقشه آفرینش–فرگشتCreation–evolution controversy (همچنین گفتمان آفرینش در برابر فرگشتCreation vs. evolution debate یا گفتمان خاستگاه‌هاOrigins debate) به مجادله‌هایی فرهنگی، سیاسی و مذهبی می‌پردازد که عموماً حول مسئلهٔ منشأ حیات و مقابله با پذیرش نسب مشترک انسان با جانداران دیگر جریان دارند.National Association of Biology Teachers Statement on Teaching Evolution IAP Statement on the Teaching of Evolution Joint statement issued by the national science academies of 67 countries, including the United Kingdom's Royal Society (PDF file)From the American Association for the Advancement of Science, the world's largest general scientific society: , AAAS Denounces Anti-Evolution Laws
مناقشه آفرینش–فرگشت، در اروپا و آمریکای شمالی، در اواخر قرن ۱۸ میلادی، آغاز شد، هنگامی که تفاسیر جدید از مدارک زمین‌شناختی منجر به نظریه‌های مختلفی از یک زمین کهن‌سال گشت، و یافته‌هایی از انقراض‌ها که در قالب "توالی زمین‌شناختی سنگواره" نشان داده شد، تفکرات اولیه فرگشت را برمی‌انگیخت [یا جرقه می‌زد]، به‌طور برجسته تفکر لامارکیسم. در انگلستان، در ابتدا این ایده‌های "تغییرات پیوسته" تهدیدی برای نظم اجتماعی «فیکس‌شده» به‌شمار می‌رفت، هم کلیسا و هم حاکمیت به دنبال خواباندن و واپس‌راندن آن ایده‌ها بودند.
مرکز ملی اطلاعات زیست‌فناوری معروف به NCBI یکی از مراکز و شاخه‌های کتابخانه ملی پزشکی ایالات متحده آمریکا است که خود زیرمجموعه موسسه ملی سلامت NIH قرار دارد. مؤسسه ملی سلامت در نهایت زیر مجموعه وزارت بهداشت و خدمات انسانی ایالات متحده آمریکا است. این مرکز در سال ۱۹۸۸ در پی تصویب طرح پیشنهای سناتور کلود پپر در کنگره آمریکا شکل گرفت. مرکز ملی اطلاعات زیست‌فناوری در شهر بتزدا در ایالت مریلند قرار دارد.
در این مرکز ابزار و پایگاه داده‌هایی نظیر آنتره، بلاست، پاب‌مد و ژن‌بانک اداره می‌شود.
از وظایف مرکز ان سی بی آی می‌توان موارد زیر را نام برد"Bioinformatics basics: applications in biological science and medicine". Hooman H. Rashidi, Lukas K. Buehler. Publisher CRC Press, 2000. pp.34-44:
در ریاضیات، تابع سینک (که با "(sinc(x" و گاهی با "(Sa(x" نشان داده می‌شود) دو تعریف نسبتاً معادل همدیگر دارد. در پردازش سیگنال رقمی و نظریه اطلاعات تابع سینک نرمال شده معمولاً با رابطه زیر تعریف می‌شود:
این تعریف نام نرمال شده را به این دلیل یدک می‌کشد که انتگرالگیری بر روی تمام "x" به مقدار واحد منجر می‌شود. تبدیل فوریه تابع نرمال شده سینک با تابع مستطیلی شناخته می‌شود.
در ریاضیات تابع سینک غیر نرمال شده باستانی به صورت زیر تعریف می‌شود:
تنها تفاوت بین این دو تعریف مقیاس دهی متغیر مستقل (همان محور x) با عامل ضرب شونده π است. در هر دو حالت، مقدار تابع در ناتکینی قابل رفع در نقطه صفر گاهی به‌طور خاص در حد برابر با ۱ مشخص می‌شود.
عبارت "sinc" که دارای تلفظ () است، از قطع انتهای تام لاتین کامل تابع که "sinus cardinalis" (همان cardinal sine انگلیسی) است بدست آمده است.
عبور از صفر (zero crossing) تابع سینک غیرنرمال شده در مضارب π؛ تلاقی با محور تابع سینک نرمال شده در اعداد صحیح غیر صفر.
نقاط ماکزیزم و مینیمم نسبی تابع سینک نرمال نشده متناظر است با نقاط تقاطع آن با تابع کسینوس. یعنی، (sin(ξ)/ξ = cos(ξ به ازای تمام ξهایی که مشتق "sin("x")/"x در آن‌ها صفر راست (که در نتیجه به یک اکسترمم نسبی رسیده ایم).
تابع سینک نرمال شده دارای یک نمایش ساده در حالت ضرب نامحدود است:
و توسط فرمول انعکاس اولر با تابع گامای formula_4 مرتبط می‌شود:
لئونارد اویلر کشف کرد که
تبدیل فوریه پیوسته زمان تابع سینک نرمال شده (نسبت به فرکانس معمولی) ("rect("f" است،
که پاسخ تابع مستطیلی بین minus;1/2& و 1/2 برابر 1 است، و در سایر مناطق برابر صفر است. این مسئله متناظر با ین واقعیت است که فیلتر سینک (دیوار آجری یعنی پاسخ فرکانسی مربعی) یک فیلتر پایین گذر ایده آل است. انتگرال فوریه مذکور، با در نظر گرفتن حالت خاص زیر
یک انتگرال اولیه است و یک انتگرال همگرای نیست
تابع سینک نرمال شده خواصی دارد که آن را در رابطه با میانیابی نمونه‌برداری توابع محدود باند ایده آل می‌سازد:
"ω = "π"
(یعنی فرکانس دوره ای حداکثر ƒ" = 1/2").
خواص دو تابع سینک دیگر به شرح زیر است:
که ("Si("x انتگرال سینوسی است.
تابع دیگر cos(λ "x")/"x" است، که به x" = 0" محدود است، برعکس تابع سینک همراهش:
که تابع سینک نرمال شده واسط (meant) است.
تابع سینک نرمال شده را می‌توان به عنوان مولد تابع دلتا استفاده کرد، در صورتی که زیر برقرار باشد:
حد اشاره شده در بالا یک حد معمولی نیست، زیرا سمت چپ این حد همگرا نیست. در عوض می‌توان گفت
برای هر تابع هموار formula_18 با برقرار است.
در عبارت بالا، در حالی که "a" به صفر میل می‌کند، تعداد نوسان در واحد طول تابع سینک به بینهایت نزدیک می‌شود. با این حال، عبارت مذکور همیشه در داخل پوش (π "a" "x")/1 ± قرار دارد، و برای هر مقدار غیر صفر "x" به صفر میل می‌کند. این عمل تصویر غیررسمی (δ(x را که برای هر "x" غیر از "x" = 0 صفر است را پیچیده می‌کند، و مسئله تجسم تابع دلتا را به صورت تابع ( و نه یک توزیع) ساده می‌کند. مفهوم مشابهی را در مفهوم گیبس می‌توان یافت.
اینجا متن قالب‌بندی‌نشده وارد شود
مِدلاین یکی از معروفترین پایگاه داده‌های آزاد (دیتابیس) در جهان است که حاوی اطلاعات بیبلیوگرافی پژوهشی برای تمام رشته‌های علوم پزشکی و زیست‌شناسی است."MEDLINE: a guide to effective searching in PubMed and other interfaces". Brian S. Katcher. Ashbury Press, 2006.
مدلاین مجموعه‌ای از اطلاعات کیفی کتابخانه ملی پزشکی ایالات متحده، موسسات ملی بهداشت ایالات متحده آمریکا، و سایر نهادهای و سازمان‌های دولتی سلامت ایالات متحده است.
این پایگاه داده توسط ابزاری همانند پاب‌مد به‌طور رایگان برای جهانیان قابل دسترس است.
پاب‌مِد (به انگلیسی: ) یک موتور جستجوی تحت وب رایگان است که دسترسی به چندین پایگاه داده اصلی در گستره وسیعی از رشته‌های علوم پزشکی و زیست‌شناسی را فراهم می‌کند. پاب‌مِد توسط کتابخانه ملی پزشکی () وابسته به مرکز ملی اطلاعات زیست‌فناوری () ایالات متحده آمریکا نگهداری و بروزرسانی می‌شود."Bioinformatics basics: applications in biological science and medicine". Hooman H. Rashidi, Lukas K. Buehler. Publisher CRC Press, 2000. pp.38
اصلی‌ترین پایگاه داده پاب‌مِد، مدلاین نام دارد که مهم‌ترین و معروفترین پایگاه داده اطلاعات کتاب‌شناختی مقالات زیست-پزشکی است و به همین دلیل در برخی موارد دو واژه پاب‌مِد و مدلاین به جای یکدیگر بکار میروند. علاوه بر مدلاین پایگاه‌های داده دیگری هم از طریق این موتور جستجو قابل دسترس هستند. تا تاریخ ۱۱ جولای ۲۰۱۷ پاب‌مِد دسترسی به بیش از ۲۸
میلیون رکورد اطلاعاتی مربوط به سال‌های ۱۹۶۶ به بعد را فراهم می‌کرد(Note: To see the current size of the database simply type "1800:2100[dp]" into the search bar at https://www.ncbi.nlm.nih.gov/pubmed/ and click "search".) که قدیمی‌ترین آن‌ها به سال 1803 بازمی‌گردد.Yearly Citation Totals from 2008 MEDLINE/PubMed Baseline: ۱۶٬۸۸۰٬۰۱۵ Citations Found پاب‌مِد به هر رکورد نمایه شده در پایگاه دادگانش یک شناسه یکتای هشت رقمی اختصاص می‌دهد که به نام شناسه پاب‌مِد () شناخته می‌شود.
تاریخچه نمایه سازی کتب و مقالات پزشکی به  سال ۱۸۳۶ میلادی بازمی‌گردد، زمانی که کتابخانه پزشکی ارتش آمریکا بنیان نهاده شد. یکی از خدمات ماندگار این کتابخانه، تهیه و انتشار فهرست موضوعی مقالات پزشکی بود که ایندکس مدیکوس () نام گرفت. در سال ۱۹۵۶ این کتابخانه به کتابخانه ملی پزشکی آمریکا (NLM) تبدیل شد. همگام با گسترش فناوری رایانه در بخش‌های گوناگون و رشد روزافزون انتشارات مقالات جدید، نیاز به مکانیزه کردن فرآیند ذخیره و بازیابی اطلاعات ایندکس مدیکوس احساس شد. این پروژه که مدلارس () نامگذاری شد، نخستین گام در کامپیوتری کردن پایگاه داده کتابخانه ملی پزشکی آمریکا بود و تنها توسط کارشناسان این کتابخانه قابل دسترس بود. با راه‌اندازی این سیستم پژوهشگران از سراسر دنیا درخواست خود برای جستجوی موضوع مورد نظر خود را به کتابخانه ملی پزشکی آمریکا می‌فرستادند. کارشناسان کتابخانه جستجو را انجام داده، نتایج را روی بر روی کاغذ  چاپ کرده و برای آن‌ها با پست ارسال می‌کردند. هزینه هر درخواست جستجو برای مدلارس در آن زمان حدود ۱۴ پوند انگلیس بود که با ارزش کنونی حدود ۲۰۰ پوند می‌باشد.
با پیشرفت فناوری ارتباطات و افزایش نیاز به دسترسی به این پایگاه داده از سوی مراکز علمی پژوهشی، در سال ۱۹۷۱یک شبکه مخابراتی اختصاصی برای دسترسی برخط به این پایگاه داده راه اندازی شد و پژوهشگران دانشگاه‌ها و مراکز علمی بزرگ آمریکا با اتصال به این شبکه قادر شدند تا جستجوهای خود را از راه دور بر روی این پایگاه داده انجام دهند. این سامانه مدلارس برخط (MEDlars onLINE) یا به اختصار مدلاین () نامیده شد. از آنجا که هزینه ارتباط مخابراتی با سامانه مدلاین نسبتاً زیاد بود و امکان این ارتباط بنا به دلایل فنی برای خیلی از مراکز فراهم نبود، در گام بعدی برای افزایش دسترسی به مدلاین به صورت آفلاین، این پایگاه داده به صورت سالیانه بر روی سی دی تهیه و منتشر میشد. یکی از ناشرین معروف مدلاین بر روی سی دی، شرکت سیلور پلاتر  بود که فراهم‌کنندهٔ اصلی این سرویس برای دانشگاه‌های ایران بود.
با پیدایش شبکه اینترنت، کتابخانه ملی پزشکی آمریکا در سال ۱۹۹۷ دسترسی رایگان به پایگاه داده مدلاین را از طریق اینترنت برای همگان  فراهم کرد. این پروژه که مدلاین عمومی یا به اختصار پاب‌مِد (Public Medline - PubMed) نامیده شد، توسط معاون رئیس‌جمهور وقت آمریکا افتتاح شد. از آنجا که در ابتدای راه اندازی، مدلاین تنها پایگاه داده سامانه پابمد بود، دو واژه پاب‌مِد و مدلاین در خیلی از موارد همتای هم در نظر گرفته می شد و میتوانست به جای یکدیگر به کار رود. بعدها پایگاه‌های داده دیگری، علاوه بر مدلاین، به پاب‌مِد افزوده شدند. بدین ترتیب عبارت جستجوی وارد شده در پاب‌مِد علاوه بر پایگاه داده مدلاین، به‌طور هم‌زمان در چندین پایگاه داده دیگر نیز جستجو می‌شود. از سوی دیگر کتابخانه ملی پزشکی آمریکا پایگاه داده مدلاین را در اختیار شرکت‌های دیگری همچون الزویر () و ابسکو  ()قرار داد تا دسترسی به آن را  از موتور جستجوی ( and Ebsco host) خود فراهم کنند. از آنجا که الگوریتم‌های به کار رفته در موتورهای جستجوی گوناگون با هم متفاوت هستند، نتایج بدست آمده از جستجوی مدلاین با کلید واژه‌های یکسان از این محیط‌ها می‌تواند با یکدیگر متفاوت باشد.
جستجوی ساده در پاب‌مِد با وارد کردن واژگان کلیدی مربوط به موضوع مورد نظر در پنجرهٔ جستجو صورت می‌گیرد. لیست نتایج جستجو به صورت پیش‌فرض بر پایه تاریخ ورود به پایگاه داده از جدیدترین به قدیمی‌ترین مرتب می‌شوند که این ترتیب نمایش می‌تواند با توجه به نیاز به کاربر تغییر یابد. یک ویژگی یکتای این موتور جستجو مرتب کردن نتایج جستجو بر پایه نویسنده آخر است که در سایر موتورهای جستجوی علمی دیده نمی شود.