payamvha/North_RAG huggingface dataset:
فانی که دل در گرو عشق آنها بسته‌اند، آنها را به قعر دریا می‌برند. تشابهاتی بین افسانه‌های پری دریایی و افسانه‌های سیرن (حوری دریایی اسطوره‌های یونان) وجود دارد. گرچه پریان دریا، در افسانه‌ها گاهی مهربان و خوش‌نام‌اند، اما به‌طور معمول پلید تصویر شده‌اند، هدایایشان بدیمنی می‌آورد، اگر آزرده‌خاطر شوند، موجب به‌پاشدن طوفان و سایر بلایا می‌شوند، به‌طوری که دیدن یکی از آنها در دریا، نشانه غرق شدن کشتی بوده‌است. برخی چون لورلای رود راین، با خواندن آوازهای زیبا موجب جلب ماهیگیران و دریانوردان به دریا و غرق شدن
موجب جلب ماهیگیران و دریانوردان به دریا و غرق شدن آنها شده و بعضی مثل پری دریایی حکاکی شده در سکوی کلیسای «زنور» در «کورنوال» انگلستان، مردان جوان را می‌فریبند تا برای زیستن با آنان به اعماق دریا روند. هانس کریستین اندرسن، در داستان محبوب پری دریایی کوچولو که در سال ۱۸۳۶ آن را به رشته تحریر درآورد، دربارهٔ پریان دریایی اینگونه نقل می‌کند که آنها فراموش می‌کنند که انسانها نمی‌توانند در زیر آبها نفس بکشند، حال آنکه به عقیده برخی دیگر، آنها از روی کینه و دشمنی، انسانها را غرق می‌کنند. پری دریایی در افسانه‌های
انسانها را غرق می‌کنند. پری دریایی در افسانه‌های بسیاری از فرهنگ‌های جهان، از تمدن آشوریان تا بابل و یونان باستان وجود دارد. در بعضی افسانه‌های اروپایی آمده پری دریایی توانایی برآورده کردن آرزوهای انسان‌ها را دارد، و در ژاپن معروف است که خوردن گوشت پری دریایی سبب جوان ماندن و زندگی جاوید می‌شود. برخی زمینه خلق افسانه‌های پری دریایی را پستانداران آبزی چون گاوهای دریایی و دوگانگها می‌دانند که در کنار ساحل دریا به نحوی مثل انسان‌ها به شیردادن به بچه‌هایشان می‌پردازند. در متن‌های فارسی. در ایران نیز داستان پری
در متن‌های فارسی. در ایران نیز داستان پری دریایی وجود دارد به خصوص در جنوب ایران، در مجاورت خلیج فارس. چنان‌که در داستان‌های منیرو روانی‌پور با نام "آبی‌ها" و "قرمزها" دیده می‌شوند. واژهٔ "پری دریایی" از "پری" + "دریایی" ساخته شده است. واژهٔ "پری" در "لغت‌نامه دهخدا" به نقل از "غیاث‌اللغات" و "منتهی‌الارب"، به معنای «جن» و «فرشته» آمده است؛ "غیاث‌اللغات" دربارهٔ این واژه آورده است: «نوعی از زنان جن که نهایت خوبرو باشند» و در "منتهی‌الارب"، پری متضاد دیو دانسته شده است. "فرهنگ فارسی معین" و "فرهنگ عمید" هم
شده است. "فرهنگ فارسی معین" و "فرهنگ عمید" هم پری را به معنای جن دانسته‌اند. در متن‌های کهنِ داستانی فارسی از آدمی‌وشانی که در دریا زندگی می‌کنند نام برده شده‌است. ایشان را مردمِ آبی خوانده‌اند. این مردمان آبی به‌عادت از آدمیان گریزانند. لیک بر اثر مجاورت با آدمیان انس می‌گیرند، خاصه آدمیانی که به جزیره‌های متروک افتاده‌اند. مردمان آبی سخن آدمیان نمی‌دانند لیک به زبان اشاره ارتباط بر قرار توانند کرد. با آدمیان جفت‌گیری توانند کرد و صاحب فرزند توانند شد. حمدالله مستوفی در بخش جانورشناسی "نزهةالقلوب" که با
مستوفی در بخش جانورشناسی "نزهةالقلوب" که با استناد به "عجایب‌المخلوقات" نوشته شده‌است از «آدمی آبی» نام می‌برد. او آدمیان آبی را از همه حیث چون آدمیان برّی خوانده‌است جز آنکه به جثه کوچک‌ترند و دم می‌دارند. شباهت به انسان[های بری] به قدری در نظر نویسنده زیاد بوده‌است که «جهت لفظ انسانیت» ترتیب الفبایی را درآوردن نام ایشان رعایت نکرده‌است و آدمی آبی را در صدر فهرست جانوران بحری آورده‌است. برخلاف باورهای اروپایی که در بالا گفته آمده‌است، دریانوردان ایرانی، دیده‌شدن مردمان آبی را خوش‌یمن دانستندی. چنان‌که
دیده‌شدن مردمان آبی را خوش‌یمن دانستندی. چنان‌که مستوفی هم نوشته‌است: «ظهورشان در بحر، دریاورزان را خرّمی افزاید و آن را سبب آرام دریا دانند».
ویکی‌انبار یک مخزن دیجیتال از فایل‌های رایگان تصویری، صوتی، و دیگر فایل‌های رسانه‌ای است. بنیاد ویکی‌مدیا پروژهٔ ویکی‌انبار را ایجاد کرده است. فایل‌های ویکی‌انبار را می‌توان خارج از این سایت یا در همهٔ پروژه‌های ویکی‌مدیا استفاده کرد. بنابراین، با استفاده از نشانی یک فایل موجود در ویکی‌انبار، نیازی به بارگذاری دوبارهٔ آن در ویکی‌پدیا یا دیگر پروژه‌ها نیست. این پروژه‌ها در تمام زبان‌ها وجود دارند و شامل دانشنامه ویکی‌پدیا، ویکی‌واژه، ویکی‌کتاب، ویکی‌سفر، ویکی‌گونه، ویکی‌نبشته و ویکی‌خبر می‌شود. تا ماه اوت
ویکی‌نبشته و ویکی‌خبر می‌شود. تا ماه اوت ۲۰۲۳، این مخزن حاوی بیش از ۹۷ میلیون فایل رسانه‌ای رایگان است که توسط داوطلبان ثبت‌نام شده، مدیریت و ویرایش می‌شوند. تاریخچه. پروژهٔ ویکی‌انبار در مارس ۲۰۰۴ توسط اریک مولر پیشنهاد وفعالیت آن در ۷ سپتامبر ۲۰۰۴ راه‌اندازی شد. شمار محتوا. "منبع: "
نَستَرَن یکی از گونه‌های وحشی رز و بومی اروپا، آسیای باختری و شمال خاوری آفریقا است. گونه‌های بسیاری از آن در جنگل‌های شمال، منطقه ارسباران، و ارتفاعات فوقانی مناطق دیگر ایران به صورت خودرو یافت می‌شود. گل‌های آن ریز هستند، که به رنگ‌های صورتی، سفید، قرمز و گاهی زرد یافت می‌شوند. بوی آن‌ها ملایم و مطبوع است. نسترن‌ها در طول جنگ جهانی دوم در باغ‌های پیروزی آمریکا کاشته می‌شدند و هنوز هم در نواحی مرطوب و شنی نوار ساحلی خاوری یافت می‌شوند. ویژگی‌های ظاهری. نسترن درختچه‌ای برگریز است. ارتفاع آن از ۱ تا ۵ متر و
درختچه‌ای برگریز است. ارتفاع آن از ۱ تا ۵ متر و ممکن بیشتر هم رشد کند. گلهای نسترن کوچک و دارای پنج گلبرگ هستند. رنگ آن‌ها از صورتی تا سفید (معمولاً صورتی کمرنگ) متغیر است. این گیاه بر روی ساقه‌هایش تیغ‌های کوچک و تیزی دارد که در بالا روندگی کمکش می‌کنند. از تمامی گونه های یافت شده از گل نسترن یکی از زیباترین و بهترین گونه های یافت شده گونه ی داداشی است استفاده‌ها. قوزه (میوه) نسترن که تاجیک‌ها به آن خوج می‌گویند شامل برخی از آنتی‌اکسیدان‌ها است. بعلاوه، این میوه، بخاطر دارا بودن ویتامین سی در سطح بالا، در
میوه، بخاطر دارا بودن ویتامین سی در سطح بالا، در تهیه شربت، چای و نوعی مربا استفاده می‌شود. در بلغارستان گلبرگ‌ها را در تهیه شراب شیرین بکار می‌برند. در طبّ سنتی اتریش جوشیده میوه نسترن برای درمان عفونتهای ویروسی، نارسایی‌های کلیوی و مجاری ادراری مورد استفاده بود. در طبّ سنتی ایران مورد توجه خاصی است. برای مثال، خواص زیر برای عرق نسترن ذکر شده است: در منطقه ارسباران آش نسترن غذایی محبوب است. نسترن وحشی را خیس کرده بعد از سه روز از آبکش رد می‌کنند. آب آبکش شده را جوشانده و کفّ آن را می‌گیرند. بعد برنج را
شده را جوشانده و کفّ آن را می‌گیرند. بعد برنج را اضافه می‌کنند. بعد از اینکه برنج پخت حبوبات پخته شده، میوه خشک را اضافه کرده بعد از یک ربع ساعت رشته و روغن را اضافه می‌کنند. وقتی که رشته پخت، آش آماده است. میوه گل نسترن دارای ویتامین C ترکیبی از آسکوربیک اسید و هیدرو اسکوربیک اسید است ویتامین C میوه خشک شده که در بازار هست به مرور زمان از بین می‌رود پس حتماً این میوه را تازه مصرف نمایید تا ویتامین C زیادی وارد بدنتان شود. این گیاه دارای ویتامین‌های A1، B1، B2، B3 و K می‌باشد چای میوه گل نسترن برای
A1، B1، B2، B3 و K می‌باشد چای میوه گل نسترن برای بیماری‌های عفونی بسیار مفید است. میوه گل نسترن هیچ عوارض خاصی ندارد و تا الان هیچ گزارشی دراین مورد در جهان کسی دریافت نکرده است افرادی که بیماری تنفسی دارند شاید آلرژی برای این افراد ایجاد نماید. مهم‌ترین خواص این میوه مسکن درد، درمان اسهال، ملین و ضد یبوست، مقوی اعصاب، ضد کرم، سرشار از ویتامین ث است دمنوش میوه گل نسترن برای بیماری‌های دهان و لثه بسیار مفید است. بهتر است از میوه گل نسترن مربا تهیه نموده و افرادی که یبوست دارند در وعده‌های صبحانه از این
و افرادی که یبوست دارند در وعده‌های صبحانه از این مربا استفاده نمایند. نسترن به مثابه بوته مزاحم. بوته نسترن، گونه‌ای مهاجم است، و ممکن است جایگزین گیاهان بومی شده و تعادل زیستی را به هم بزند. بنابر این، هنگام کاشت تزیینی این بوته در یک محیط جدید باید احتمال مزاحمت محیط زیستی در نظر گرفته شود.
دیتریش بوکسته‌هوده (زادهٔ ۱۶۳۹/۱۶۳۷ - درگذشتهٔ ۹ مهٔ ۱۷۰۷) نوازندهٔ ارگ و آهنگساز دانمارکی-آلمانی در دورهٔ باروک بود. بوکسته‌هوده از سال ۱۶۶۸ در بندر لوبک اقامت گزید. املای نام کوچک او به دانمارکی Diderik است. حرکت ماهرانهٔ پاهای او بر روی پدال‌های ارگ مشهور است. این مهارت موجب اثرگیری یوهان سباستیان باخ شد و او با تمرین توانست چنین قابلیتی را در خود ایجاد کند. از نظر تاریخی، بوکسته‌هوده یکی از آهنگسازان مهم اواسط دوره باروک در آلمان است. زندگی. سال‌های آغازین در دانمارک. گمان می‌رود که او با نام دیدریش
در دانمارک. گمان می‌رود که او با نام دیدریش بوکسهود به دنیا آمده باشد. پدر و مادر او یوهانس (هانس جنسن) بوکستهود و هل جسپرسداتر بودند. پدرش اهل اولدسلو در دوک نشین هلشتاین بود که در آن زمان بخشی از قلمرو دانمارک در شمال آلمان بود. پيوهشگران هم سال و هم کشور تولد دیتریش را مورد بحث قرار می‌دهند، اگرچه اکثر آنها می‌پذیرند که او در سال ۱۶۳۷ در هلسینبورگ، اسکانه در آن زمان بخشی از دانمارک (اما اکنون بخشی از سوئد) به دنیا آمد. در آگهی ترحیم او آمده است که "او دانمارک را به عنوان کشور مادری خود به رسمیت شناخت و
را به عنوان کشور مادری خود به رسمیت شناخت و از آنجا به منطقه ما آمد و حدود ۷۰ سال زندگی کرد". با این حال، برخی دیگر ادعا می کنند که او در Oldesloe به دنیا آمده است. بعداً در زندگی خود، نام خود را آلمانی کرد و شروع به امضای اسناد با نام Dieterich Buxtehude کرد. پدرش - یوهانس بوکستهود - ارگ نواز کلیسای سنت اولاف در هلسینگور بود. دیتریش ابتدا در هلسینبورگ (۱۶۵۸-۱۶۵۷) و سپس در هلسینگور (۱۶۶۸-۱۶۶۰) به عنوان نوازنده ارگ ​​استخدام شد. مریم مقدس در هلسینگور تنها کلیسایی است که بوکسته‌هوده در آن به کار گرفته شده
کلیسایی است که بوکسته‌هوده در آن به کار گرفته شده است که هنوز ارگ را در محل اصلی خود دارد. لوبک: ماریان کرش. آخرین جایگاه بوکسته‌هوده، از سال ۱۶۶۸، در لوبک: ماریان کرش بود که دارای دو ارگ بود، یکی بزرگ برای خدمات بزرگ و دیگری کوچک برای مراسم مذهبی و تشییع جنازه. او در آنجا جانشین فرانتس تاندر شد و بسیاری از راه های سلف خود را دنبال کرد. او در سال ۱۶۶۸ با دختر تندر، آنا مارگارت ازدواج کرد - این امر غیر معمول نبود که مردی با دختر سلف خود در شغل خود ازدواج کند. بوکستهود و آنا مارگارت هفت دختر داشتند که در
کند. بوکستهود و آنا مارگارت هفت دختر داشتند که در مارین کیرش غسل تعمید داده شدند. با این حال، دختر اول او در کودکی درگذشت. پس از بازنشستگی به عنوان نوازنده ارگ ​​در کلیسای سنت اولاف، پدرش در سال ۱۶۷۳ در لوبک به خانواده ملحق شد. یوهانس یک سال بعد درگذشت و دیتریش موسیقی خاکسپاری او را ساخت. برادر دیتریش، پیتر، آرایشگر، در سال ۱۶۷۷ به آنها پیوست.
در علوم رایانه، هسته (که کِرنِل نیز خوانده می‌شود) یک برنامه رایانه است که هسته مرکزی یک سیستم عامل رایانه را تشکیل می‌دهد و کنترل تمام چیزهایی را که در سیستم اتفاق می‌افتد را در دست دارد؛ این یک بخش جدایی ناپذیر از هر سیستم عامل است. این «بخشی از کد سیستم عامل است که همیشه در حافظه ساکن است» در اکثر سیستم‌ها، این اولین برنامه بارگیری شده در هنگام راه اندازی است (بعد از بوت لودر)، همچنین کنترل درخواست‌های ورودی و خروجی توسط نرم‌افزارها و ترجمه آن‌ها به ساختارهای قابل پردازش برای واحد پردازش مرکزی را به عهده
قابل پردازش برای واحد پردازش مرکزی را به عهده دارد. علاوه بر آن مدیریت حافظه و ارتباط با دستگاه‌های جانبی مثل صفحه کلید، مانیتور، چاپگر و بلندگو هم بر عهده این برنامه است. هسته قسمت اساسی سیستم عاملهای مدرن امروزی است. کد بحرانی هسته معمولاً در یک قسمت جداگانه از حافظه بارگذاری می‌شود، که از دسترسی برنامه‌های کاربردی یا سایر قسمت‌های کم‌اهمیت سیستم عامل محافظت می‌شود. هسته در این فضای محافظت شده وظایف خود مانند اجرای فرایندها، مدیریت دستگاه‌های سخت‌افزاری مانند دیسک سخت و کار با وقفه را انجام می‌دهد. در
مانند دیسک سخت و کار با وقفه را انجام می‌دهد. در مقابل، برنامه‌های کاربردی مانند مرورگرها، واژه پرداز‌ها یا پخش کننده‌های صوتی یا تصویری از یک فضای مجزا از حافظه، فضای کاربر استفاده می‌کنند. این جداسازی از دخالت داده‌های کاربر و هسته با یکدیگر و ایجاد بی‌ثباتی و کندی و همچنین از خرابی برنامه‌های کاربردی در کل سیستم عامل جلوگیری می‌کند. رابط هسته یک لایه انتزاعی سطح پایین است. هنگامی که یک فرایند درخواست خدمات از هسته می‌کند، باید یک فراخوانی سیستمی انجام دهد. این فراخوانی سیستمی معمولاً از طریق یک تابع
دهد. این فراخوانی سیستمی معمولاً از طریق یک تابع بسته‌بندی کننده(wrapper function) که در معرض برنامه‌های فضای کاربر توسط کتابخانه‌های سیستمی است که زبان اسمبلی را جاسازی می‌کند برای ورود به هسته پس از بارگیری ثبات‌های پردازنده‌های CPU با شماره syscall و پارامترهای آن (به عنوان مثال، سیستم عامل‌های مشابه UNIX با استفاده از کتابخانه استاندارد C این کار را انجام می‌دهند). طرح‌های مختلفی برای معماری هسته وجود دارد. هسته‌های یکپارچه (مونولیتیک) کاملاً در یک فضای آدرس واحد اجرا می‌شوند که در آن، CPU در حالت ناظر
آدرس واحد اجرا می‌شوند که در آن، CPU در حالت ناظر اجرا می‌شود، عمدتاً برای سرعت. میکروکرنل‌ها بیشتر و نه همه خدمات خود را در فضای کاربر اجرا می‌کنند، همانند فرآیندهای کاربر، و عمدتاً با هدف انعطاف‌پذیری و مدولار بودن. MINIX 3 نمونه قابل توجهی از طراحی میکروکرنل است. در عوض، هسته لینوکس یکپارچه است، اگرچه ماژولار نیز هست، زیرا می‌تواند ماژول‌های هسته قابل بارگذاری را در زمان اجرا وارد و حذف کند. هسته که در واقع مؤلفه اصلی یک سیستم رایانه‌ای است وظیفه اجرای برنامه‌ها را بر عهده دارد. هسته این مسئولیت را بر
برنامه‌ها را بر عهده دارد. هسته این مسئولیت را بر عهده دارد تا در هر زمان تصمیم بگیرد تا از میان بسیاری از برنامه‌های در حال اجرا، کدام یک پردازنده یا پردازنده‌ها را در اختیار بگیرد. حافظه دسترسی تصادفی (RAM). حافظه با دسترسی تصادفی برای ذخیره موقت ساختارهای برنامه و همچنین اطلاعات به کار می‌رود. هسته مسئولیت تصمیم‌گیری این را بر عهده دارد که هر پروسه می‌تواند از کدام حافظه استفاده کند و تصمیم بگیرد و زمانی که حافظه کافی وجود ندارد چه کاری را انجام دهد. دستگاه‌های ورودی / خروجی (I / O). دستگاه‌های I / O
ورودی / خروجی (I / O). دستگاه‌های I / O شامل موارد جانبی مانند صفحه کلید، ماوس، درایو دیسک، چاپگر، دستگاه‌های USB، آداپتورهای شبکه و دستگاه‌های صفحه نمایش هستند. کرنل درخواست‌های برنامه‌ها را برای انجام I / O به یک دستگاه مناسب اختصاص می‌دهد و روش‌های مناسبی را برای استفاده از دستگاه فراهم می‌کند (به‌طور معمول در جایی خلاصه می‌شود که برنامه نیازی به دانستن جزئیات اجرای دستگاه نداشته باشد). مدیریت منابع. جنبه‌های اصلی لازم در مدیریت منابع، تعریف دامنه اجرایی (فضای آدرس) و مکانیسم محافظت مورد استفاده برای
(فضای آدرس) و مکانیسم محافظت مورد استفاده برای واسطه دسترسی به منابع درون یک دامنه است. کرنل همچنین روش‌هایی را برای هماهنگ سازی و ارتباط بین فرایند (IPC) ارائه می‌دهد. این پیاده سازیها ممکن است درون خود هسته باشد یا هسته نیز می‌تواند به دیگر فرآیندهای اجرا شده تکیه کند. اگرچه برای دستیابی به امکانات ارائه شده توسط یکدیگر، هسته باید IPC را فراهم کند، اما هسته‌ها نیز باید روشی را اجرا کنند تا درخواست‌هایی برای دسترسی به این امکانات را انجام دهند. هسته همچنین وظیفه تغییر متن بین فرایندها یا موضوعات را بر
وظیفه تغییر متن بین فرایندها یا موضوعات را بر عهده دارد. مدیریت حافظه. هسته دسترسی کامل به حافظه سیستم دارد و باید به فرایندها اجازه دهد تا با اطمینان از این حافظه به محض نیاز خود دسترسی پیدا کنند. اغلب اولین قدم در انجام این کار، آدرس دهی مجازی است که معمولاً با صفحه بندی یا تقسیم‌بندی انجام می‌شود. حافظهٔ مجازی این اجاره را به هسته می‌دهد تا مثل یک آدرس فیزیکی داده به نظر می‌رسد. فضای آدرس مجازی ممکن است برای فرایندهای مختلف متفاوت باشد. حافظهٔ مجازی حافظه ایست که یک فرایند دسترسی در یک آدرس خاص با
حافظه ایست که یک فرایند دسترسی در یک آدرس خاص با فرایند دیگری در همان آدرس حافظه‌ای متفاوت داشته باشد. استفاده از ان آدرس این اجازه را می‌دهد که هر برنامه در حال اجرا مانع اجرای برنامه‌های کاربردی دیگر نشود. حافظهٔ مجازی همچنین این اجازه را می‌دهد حافظه به دو دسته (مد هسته) و (مد کاربر) تقسیم کرده و از آسیب به یک برنامهٔ در حال اجرا در هسته می‌شود. در بسیاری از سیستم‌ها، آدرس مجازی برنامه ممکن است به داده‌هایی که در حال حاضر در حافظه نیستند، اشاره کند. لایه indirection ارائه شده توسط آدرس دهی مجازی به
لایه indirection ارائه شده توسط آدرس دهی مجازی به سیستم عامل اجازه می‌دهد تا از مخزنهای داده دیگر مانند هارد دیسک استفاده کند تا آنچه را که در غیر این صورت باید در حافظه اصلی (RAM) باقی بماند، ذخیره کند. در نتیجه، سیستم‌های عامل می‌توانند به برنام‌ها اجازه دهند از حافظه بیشتری نسبت به سیستم موجود در سیستم فیزیکی استفاده کنند. هنگامی که یک برنامه به داده‌هایی نیاز دارد که در حال حاضر در RAM نباشد، CPU به هسته سیگنال می‌دهد که این اتفاق افتاده‌است، و هسته با نوشتن محتویات یک بلوک حافظه غیرفعال به دیسک (در
نوشتن محتویات یک بلوک حافظه غیرفعال به دیسک (در صورت لزوم) و جایگزین کردن آن با داده‌های درخواست شده پاسخ می‌دهد. این برنامه می‌تواند از جایی که متوقف شده‌است از سر گرفته شود. این طرح معمولاً به عنوان صفحه بندی تقاضا معروف است. آدرس دهی مجازی همچنین امکان ایجاد پارتیشن‌های مجازی حافظه را در دو منطقه جداگانه فراهم می‌آورد، یکی برای هسته (فضای هسته) و دیگری برای برنامه‌ها (فضای کاربر) رزرو می‌کند. این پردازشگرها اجازه دسترسی به حافظه هسته را ندارند، بنابراین از آسیب دیدن هسته در حال اجرا جلوگیری می‌شود. این
از آسیب دیدن هسته در حال اجرا جلوگیری می‌شود. این بخش اساسی بنیادی فضای حافظه در طراحی‌های فعلی هسته‌های هدف اصلی بسیار مؤثر بوده و در چنین سیستم‌هایی تقریباً جهانی است، اگرچه برخی از هسته‌های تحقیقاتی (به عنوان مثال، تکینگی) رویکردهای دیگری دارند. مدیریت دستگاه. برای انجام کارکردهای مفید، فرایندها نیاز به دسترسی به لوازم جانبی متصل به رایانه دارند که توسط هسته از طریق درایورهای دستگاه توسط هسته کنترل می‌شوند. درایور دستگاه یک برنامه رایانه ای است که سیستم عامل را قادر می‌سازد با یک دستگاه سخت‌افزاری
عامل را قادر می‌سازد با یک دستگاه سخت‌افزاری ارتباط برقرار کند. این سیستم عامل اطلاعاتی در مورد چگونگی کنترل و برقراری ارتباط با یک قطعه خاص از سخت‌افزار را در اختیار شما قرار می‌دهد. درایور یک قطعه مهم و یک برنامه اساسی است. هدف طراحی درایور انتزاع است. وظیفه درایور ترجمه مکالمات عملکرد انتزاعی انتصاب شده توسط سیستم عامل (تماس‌های برنامه‌نویسی) در تماس‌های خاص دستگاه است. از نظر تئوری، دستگاه باید به درستی با درایور مناسب کار کند. درایورهای دستگاه برای مواردی مانند کارتهای ویدئویی، کارتهای صوتی، چاپگرها،
مانند کارتهای ویدئویی، کارتهای صوتی، چاپگرها، اسکنرها، مودمها و کارتهای LAN استفاده می‌شوند. در سطح سخت‌افزار ، انتزاعات مشترک درایورهای دستگاه شامل موارد زیر است: و در سطح نرم‌افزار ، انتزاعات درایور دستگاه شامل موارد زیر است: فراخوان سیستمی. مقاله اصلی: فراخوان سیستمیفراخوان سیستمی یک برنامه درخواستی از سیستم عامل در مد ویژه است. یک فراخوان سیستمی رابط بین فرایند و سیستم عامل است. فراخوان سیستمی یک مکانیسم است که توسط برنامه نرم‌افزار به درخواست یک سرویس از سیستم عامل استفاده می‌شود. به‌طور کلی سیستم
از سیستم عامل استفاده می‌شود. به‌طور کلی سیستم عامل یک کتابخانه است که بین سیستم عامل و برنامه‌های عادی می‌باشد. برای فراخوانی‌های سیستمی چند راه وجود دارد: تصمیمات طراحی هسته. حفاظت نکته مهمی که در طراحی هسته وجود دارد، پشتیبانی در حمایت از خطا (تحمل گسل) و رفتارهای مخرب (امنیت) است. این دو جنبه معمولاً کاملاً مشخص نیستند و اتخاذ این تمایز در طراحی هسته منجر به رد یک ساختار سلسله مراتبی برای محافظت می‌شود. مکانیسم‌ها یا خط مشی‌های ارائه شده توسط هسته با توجه به معیارهای مختلفی از جمله طبقه‌بندی می‌شوند:
به معیارهای مختلفی از جمله طبقه‌بندی می‌شوند: استاتیک (در زمان کامپایل) یا پویا (در زمان اجرا) اجرا می‌شود. پیشگیرانه یا پس از تشخیص. مطابق با اصول محافظت از آنها راضی (به عنوان مثال، Denning). آیا آنها از سخت‌افزار پشتیبانی می‌شوند یا مبتنی بر زبان هستند. خواه آنها بیشتر یک مکانیسم باز باشند یا یک سیاست الزام‌آور. و خیلی بیشتر. پشتیبانی از حوزه‌های حفاظت سلسله مراتبی معمولاً با استفاده از حالتهای CPU انجام می‌شود. بسیاری از هسته‌ها اجرای «قابلیت‌ها»، یعنی اشیایی را که به کد کاربر ارائه می‌شود امکان دسترسی
را که به کد کاربر ارائه می‌شود امکان دسترسی محدود به یک شیء اساسی را که توسط هسته کنترل می‌شود فراهم می‌کنند. مثال متداول، دست زدن به پرونده است: یک پرونده بازنمایی اطلاعات ذخیره شده در یک دستگاه ذخیره‌سازی دائمی است. هسته ممکن است قادر به انجام بسیاری از عملیات‌های مختلف، از جمله خواندن، نوشتن، حذف یا اجرای آن باشد، اما یک برنامه در سطح کاربر فقط ممکن است مجاز به انجام برخی از این عملیات‌ها باشد (به عنوان مثال، فقط خواندن پرونده مجاز است). اجرای مشترک این امر این است که کرنل یک شیء را برای برنامه ارائه
امر این است که کرنل یک شیء را برای برنامه ارائه دهد (معمولاً به اصطلاح «دسته پرونده» نامیده می‌شود) و سپس برنامه می‌تواند عملیات را فراخوانی کند، اعتبار آن در زمان درخواست عملیات هسته را بررسی می‌کند. چنین سیستمی ممکن است گسترش یابد تا تمام اشیاء هسته را مدیریت کند، و در واقع به اشیاء ارائه شده توسط برنامه‌های کاربردی کاربر دیگر باشد. یک روش کارآمد و ساده برای ارائه پشتیبانی سخت‌افزاری از قابلیتها، واگذاری مسئولیت بررسی حقوق دسترسی برای هر دسترسی به حافظه، مکانیزمی به نام آدرس دهی مبتنی بر قابلیت است.
مکانیزمی به نام آدرس دهی مبتنی بر قابلیت است. بیشتر معماری‌های رایانه‌های تجاری فاقد چنین پشتیبانی MMU برای قابلیت‌ها هستند. یک روش جایگزین شبیه‌سازی قابلیت‌ها با استفاده از دامنه‌های سلسله مراتبی است که معمولاً پشتیبانی می‌شوند. در این روش، هر شیء محافظت شده باید در یک فضای آدرس قرار بگیرد که برنامه به آن دسترسی ندارد. هسته همچنین لیستی از قابلیتهای موجود در چنین حافظه ای را حفظ می‌کند. هنگامی که یک برنامه کاربردی باید به یک شیء محافظت شده توسط یک قابلیت دسترسی داشته باشد، تماس تلفنی سیستم را انجام می‌دهد
داشته باشد، تماس تلفنی سیستم را انجام می‌دهد و هسته بررسی می‌کند که آیا توانایی برنامه به شما اجازه می‌دهد تا عملکرد درخواست شده را انجام دهد یا خیر، اگر اجازه داشته باشد دسترسی به آن را انجام می‌دهد (یا مستقیم، یا با ارسال درخواست به یک فرایند سطح کاربر دیگر). هزینه عملکرد تعویض فضای آدرس، عملی بودن این روش را در سیستمهایی با تعامل پیچیده بین اشیاء محدود می‌کند، اما در سیستم عامل‌های فعلی برای اشیاء که به‌طور مکرر قابل دسترسی نیستند یا از آنها انتظار نمی‌رود که به سرعت انجام شوند، استفاده می‌شود. اگر
که به سرعت انجام شوند، استفاده می‌شود. اگر سیستم عامل از مکانیزم‌های محافظت پشتیبانی نمی‌کند، می‌توان محافظت را در سطح بالاتری شبیه‌سازی کرد، به عنوان مثال با شبیه‌سازی قابلیت‌ها با دستکاری جداول صفحه، اما پیامدهای عملکردی نیز وجود دارد. با وجود این، عدم وجود پشتیبانی سخت‌افزاری ممکن است برای سیستم‌هایی که تصمیم به استفاده از محافظت مبتنی بر زبان دارند، مسئله ای نباشد. تصمیم مهم در مورد طراحی هسته ، انتخاب سطوح انتزاعی است که مکانیسم‌ها و سیاست‌های امنیتی باید در آن اعمال شود. مکانیسم‌های امنیتی هسته نقش
باید در آن اعمال شود. مکانیسم‌های امنیتی هسته نقش اساسی در حمایت از امنیت در سطوح بالاتر دارند. یک رویکرد استفاده از سیستم عامل و پشتیبانی هسته برای تحمل خطا است (ایجاد بالا) و ایجاد سیاست امنیتی برای رفتارهای مخرب در بالا از آن (اضافه کردن ویژگی‌هایی مانند مکانیزم‌های رمزنگاری در صورت لزوم)، واگذاری برخی مسئولیت‌ها به کامپایلر. رویکردهایی که اجرای سیاستهای امنیتی را به کامپایلر و / یا سطح برنامه واگذار می‌کنند، معمولاً امنیت مبتنی بر زبان نامیده می‌شوند. فقدان بسیاری از سازوکارهای مهم امنیتی در سیستم‌های
بسیاری از سازوکارهای مهم امنیتی در سیستم‌های عامل اصلی فعلی مانع از اجرای سیاست‌های امنیتی کافی در سطح انتزاع برنامه می‌شود. در حقیقت، یک تصور غلط رایج در امنیت رایانه این است که هرگونه سیاست امنیتی بدون در نظر گرفتن پشتیبانی از هسته می‌تواند در یک برنامه اجرا شود. محافظت از سخت‌افزار یا مبتنی بر زبان امروزه سیستم‌های رایانه ای معمولی دربارهٔ قوانین برنامه مجاز به دسترسی به داده‌ها از قوانینی که به سخت‌افزار اعمال شده استفاده می‌کنند. پردازنده بر اجرای آن نظارت می‌کند و برنامه ای را که نقض یک قانون است،
نظارت می‌کند و برنامه ای را که نقض یک قانون است، متوقف می‌کند، مانند یک فرایند کاربری که سعی در نوشتن آن به حافظه هسته دارد. در سیستم‌هایی که فاقد پشتیبانی از قابلیت‌ها هستند، فرایندها با استفاده از فضاهای آدرس جداگانه از یکدیگر جدا می‌شوند. تماس با استفاده از فرآیندهای کاربر به درون هسته تنظیم می‌شود و آنها را ملزم به استفاده از یکی از روش‌های تماس سیستم فوق بیان می‌کند. یک روش جایگزین استفاده از حفاظت مبتنی بر زبان است. در سیستم حفاظت مبتنی بر زبان، هسته فقط اجازه اجرای کد را می‌دهد که توسط یک کامپایلر
فقط اجازه اجرای کد را می‌دهد که توسط یک کامپایلر زبان قابل اعتماد تولید شده‌است. سپس زبان ممکن است به گونه ای طراحی شده باشد که غیرممکن باشد که برنامه‌نویس بتواند دستور دهد کاری را انجام دهد که یک مورد امنیتی را نقض کند. مزایای این رویکرد شامل موارد زیر است: معایب عبارتند از: نمونه‌هایی از سیستم‌های دارای محافظت مبتنی بر زبان شامل JX و Singularity مایکروسافت است. همکاری فرایند. Edsger Dijkstra ثابت کرد که از دیدگاه منطقی، عملیات قفل و باز کردن قفل اتمی که در سمفورهای باینری کار می‌کند ابتدایی کافی برای
در سمفورهای باینری کار می‌کند ابتدایی کافی برای بیان هرگونه عملکرد همکاری فرایند هستند. با این حال، این رویکرد به‌طور کلی از نظر ایمنی و کارایی به نظر می‌رسد، در حالی که یک رویکرد انتقال پیام انعطاف پذیرتر است. تعداد زیادی از رویکردهای دیگر (یا سطح پایین یا بالاتر) نیز موجود است، که بسیاری از هسته‌های مدرن پشتیبانی از سیستم‌هایی مانند حافظه مشترک و تماس‌های از راه دور را پشتیبانی می‌کنند. مدیریت دستگاه I / O. ایده هسته ای که دستگاه‌های I / O به‌طور یکنواخت با سایر فرایندها به کار گرفته می‌شوند، به عنوان
با سایر فرایندها به کار گرفته می‌شوند، به عنوان فرآیندهای همکاری موازی، ابتدا توسط برینچ هانسن پیشنهاد و اجرا شد (اگرچه ایده‌های مشابه در سال ۱۹۶۷ پیشنهاد شد). در توضیحات هانسن در مورد این، فرآیندهای «رایج» فرایندهای داخلی نامیده می‌شوند، در حالی که دستگاه‌های I / O فرایندهای خارجی نامیده می‌شوند. مشابه حافظه فیزیکی، اجازه دسترسی مستقیم به برنامه‌ها به درگاه‌ها و ثبت‌های کنترل‌کننده می‌تواند باعث خراب شدن کنترلر یا خراب شدن سیستم شود. با این کار بسته به پیچیدگی دستگاه، برخی از دستگاه‌ها می‌توانند به طرز
دستگاه، برخی از دستگاه‌ها می‌توانند به طرز شگفت‌آوری پیچیده‌ای برای برنامه‌ریزی شوند و از چندین کنترلر مختلف استفاده کنند. به همین دلیل، ارائه یک رابط انتزاعی تر برای مدیریت دستگاه مهم است. این رابط معمولاً توسط یک درایور دستگاه یا لایه انتزاعی سخت‌افزاری انجام می‌شود. بیشتر اوقات، برنامه‌ها نیاز به دسترسی به این دستگاه‌ها دارند. هسته باید با پرس و جو در سیستم برای آنها به نوعی لیست این دستگاه‌ها را حفظ کند. این کار از طریق BIOS یا از طریق یکی از اتوبوسهای مختلف سیستم (مانند PCI / PCIE یا USB) قابل انجام