در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش لینوکس (LPIC1 101) قسمت 7 : Shared Libraries

آیا تا به حال به این موضوع فکر کرده اید که یک نرم افزار تنها یک فایل نیست ؟ آیا تا به حال به این موضوع فکر کرده اید که یک سری فعالیت ها وجود دارند در بسیاری از نرم افزارها که مشترک هستند و می توان به جای اینکه چند بار آنها را انجام داد یکبار انجام داد و بارها استفاده کرد ؟ آیا به این موضوع فکر کرده اید که ایجاد کردن تعداد زیادی تابع در حافظه RAM برای کارهای تکراری باعث کاهش کارایی سیستم می شود ؟

نرم افزارها برای اینکه بتوانند کارهایشان را بصورت جدا جدا و تفکیک شده انجام بدهند از مکانیزمی به نام Library یا کتابخانه در سیستم عامل استفاده می کنند ، برای مثال ما کتابخانه ای داریم که از کیبورد ورودی و خروجی دریافت و ارسال می کند ، ما کتابخانه ای برای مثال در نرم افزار فتوشاپ داریم که وظیفه انتخاب کردن RGB یک پیکسل از تصویر را بر عهده دارد و به همین ترتیب هزاران Library ممکن است در یک سیستم عامل وجود داشته باشند که در کنار هم کارهای یک نرم افزار را کامل می کنند ، در هنگام اجرا شدن هر یک از این Library ها آنها باید در حافظه RAM شما Load شوند.

اگر بتوانیم برای فرآیند های تکراری Library هایی درست کنیم که بتواند همزمان همان سرویس را به نرم افزارهای دیگر نیز بدهد و بصورت اشتراکی استفاده شود باعث بالا بردن کارایی حافظه RAM و حتی CPU می شویم ، این مفهوم در سیستم عامل لینوکس به عنوان Shared Library شناخته می شود. در این ویدیوی آموزشی ما ابتدا نحوه کار کردن یک نرم افزار در سیستم عامل لینوکس را به شما معرفی می کنیم ، سپس به معرفی تفاوت بین Static Library و Shared Library ها می پردازیم ، محل نگهداری انواع Library ها در سیستم عامل لینوکس را معرفی می کنیم و در ادامه نحوه مشاهده لینک ها ، ساختار نامگذاری Library ها ، نحوه شناسایی Library های مورد استفاده در یک نرم افزار ، نحوه update کردن لیست Library های در حال اجرا در سیستم عامل و همچنین معرفی کردن فایل های ld.so.conf و ld.so.cache می پردازیم و در نهایت در خصوص Set کردن Environment Varaible مربوط به این Library ها کارمان را به پایان می رسانیم ، امیدوارم مورد توجه شما قرار بگیرد. ITPRO باشید

#shared_library_چیست #دوره_آموزشی_lpic1 #دوره_آموزشی_lpic #ویدیوی_دوره_آموزشی_لینوکس_فارسی #دوره_آموزشی_linux_essentials #دوره_آموزشی_lpic_فارسی #دوره_آموزشی_linux_ویدیویی #فیلم_دوره_آموزشی_لینوکس #دوره_آموزشی_لینوکس #مفهوم_shared_library_در_لینوکس
عنوان
1 آموزش لینوکس (LPIC1 101) قسمت 1 : معرفی دوره و مکانیزم آموزش 10′:26″ رایگان
2 آموزش لینوکس (LPIC1 101) قسمت 2 : تنظیمات سخت افزارها و درایور 56′:11″ 15,000
3 آموزش لینوکس (LPIC1 101) قسمت 3 : لینوکس چگونه Boot می شود ؟ 41′:4″ 15,000
4 آموزش لینوکس (LPIC1 101) قسمت 4 : run level ، inittab و systemd 45′:28″ 11,000
5 آموزش لینوکس (LPIC1 101) قسمت 5 : پارتیشن ، swap و mount point 25′:23″ 15,000
6 آموزش لینوکس (LPIC1 101) قسمت 6 : نصب و مدیریت Boot Loader 46′:41″ 15,000
7 آموزش لینوکس (LPIC1 101) قسمت 7 : Shared Libraries 31′:57″ رایگان
8 آموزش لینوکس (LPIC1 101) قسمت 8 : مدیریت بسته در خانواده Debian 45′:27″ 15,000
9 آموزش لینوکس (LPIC1 101) قسمت 9 : مدیریت بسته در خانواده RedHat 45′:15″ 15,000
10 آموزش لینوکس (LPIC1 101) قسمت 10 : دستورات خط فرمان لینوکس 37′:45″ رایگان
11 آموزش لینوکس (LPIC1 101) قسمت 11 : Text Stream و Filter متنی 60′:0″ 29,900
12 آموزش لینوکس (LPIC1 101) قسمت 12 : دستورات مدیریت مقدماتی فایل 1:4′:43″ رایگان
13 آموزش لینوکس (LPIC1 101) قسمت 13 : Stream ، Pipe و Redirect ها 26′:33″ 9,999
14 آموزش لینوکس (LPIC1 101) قسمت 14 : مدیریت Process ها 29′:49″ 9,900
15 آموزش لینوکس (LPIC1 101) قسمت 15 : اولویت Process ها در CPU 32′:17″ رایگان
16 آموزش لینوکس (LPIC1 101) قسمت 16 : جستجو در Text Stream ها 24′:56″ 11,000
17 آموزش لینوکس (LPIC1 101) قسمت 17 : ویرایشگر متنی vi editor 24′:58″ 10,450
18 آموزش لینوکس (LPIC1 101) قسمت 18 : پارتیشن بندی و تنظیمات FS 39′:23″ 15,000
19 آموزش لینوکس (LPIC1 101) قسمت 19 : تعمیرات مقدماتی فایل سیستم 47′:2″ 15,000
20 آموزش لینوکس (LPIC1 101) قسمت 20 : mount و unmount فایل سیستم 24′:1″ 15,000
21 آموزش لینوکس (LPIC1 101) قسمت 21 : Disk Quota 26′:54″ 15,000
22 آموزش لینوکس (LPIC1 101) قسمت 22 : سطوح دسترسی و مالکیت فایل ها 56′:55″ 15,000
23 آموزش لینوکس (LPIC1 101) قسمت 23 : Soft Link و Hard Link 17′:39″ رایگان
24 آموزش لینوکس (LPIC1 101) قسمت 24 : ساختار سلسله مراتبی و جستجو 25′:3″ 9,999
زمان و قیمت کل 14:45′:50″ 257,248
11 نظر
محمد منایی

عالی بود متشکر تعهد شما و همکاران ستودنی است

امیرحسین کریم پور

دستور ldconfig جالب بودش،با کاربر معمولی این دستور رو اجرا کردم خطای command not found رو خروجی داد اما وقتی با کاربر root دستور رو اجرا کردم بدون هیچ خطایی اجرا شد.

محمد نصیری

طبیعی هست برخی دستورات زمانی اجرا میشن که دسترسی لازم وجود داشته باشه چون به لایه های پایین کرنل میخاد دسترسی داشته باشیه و کاربر عادی مجاز نیست.

علی  محبوبی نژاد

سلام

دستوری که آخر ویدیو برای ساختن یه مسیر دیگه برای دسترسی به لایبرری ها با export‌می نویسید خیلی راحت با یه ریبوت سیستم حذف میشه !!!

کم کم دارم فکر میکنم یا من خیلی حساسم یا خیلی دقیقم یا بقیه کسایی که ویدیو ها رو خریدن براشون سوال نمیشده D-:

بعد یه چیزی رو میخوام مطمئن بشم....در این بحث آخر...یعنی هر نرم افزاری بخواد اجرا بشه اول میره از شاخه etc فایل ld.so.cache رو میخونه و اگر این فایل آپدیت نباشه ld.so.conf و ld.so.conf.d رو.

بعدش میره سراغ enviroment varibale ها؟؟؟ و اون مسیری که دستی وارد کردیم رو هم میخونه برای مسیر lib اختصاصی؟ روالش این میشه؟؟؟

امیرحسین کریم پور

شما برای اینکه Environment Variable ها رو بصورت دائمی در سیستم SET کنید بایستی در فایل bashrc. موجود در Home directory یوزرتون اونو ذخیره کنید و اگه بصورت Globally بخواین Environment Variable ها رو در سیستم ذخیره کنید باید در مسیر etcenvironment اونو قرار بدید. این موارد رو استاد نصیری زمانیکه مکانیزم کاری Login در لینوکس رو توضیح دادن تدریس کردن که البته مربوط به دوره 102 میشه ...

علی  محبوبی نژاد

ممنون

جواب سوال دومم رو هم اگر بدن ممنون میشم

محمد نصیری

اینکه تو حساس یا زیاد دقیق هستی اصلا مشکلی نیست و خیلی هم خوبه اما یادت باشه اصل مطلب اینه که در نهایت فراموش نکنیم که ما User هستیم در لینوکس و Developer نیستیم ، یه سری چیزها رو فقط باید بدونیم که هست و شدنی هست و کلیات روش انجامش این هست ولی برای وارد شدن در جزئیات نه نیاز بازار کار ما هست و نه تخصص ما بیشتر برای کسایی هست که برنامه نویسی می کنن ، از شما میخان که فلان سرویس رو راه اندازی کنید ، همینکه درک داشته باشید چه Library هایی کجا هستن کافیه اینکه تک تکشون رو بخایم بدونیم چیکار می کنن به ما ارتباطی نداره فقط بار اضافی رو ذهنمون میاره که هیچ کاربردی هم نداره.

علی  محبوبی نژاد

سلام

وقتی میخوایم یه ENV در export ایجاد کنیم چرا باید با حروف بزرگ همه چیز رو بزنیم؟ دلیل خاصی داره؟ اصلا مهمه؟؟؟ منظورم اسم env هست. مقدارش رو میدونم با حرفو کوچک هم میشه زد.

آیا باید بزرگ باشه اسم env ؟ چون دستور export رو هم که میزنیم همه env ها با حروف کپیتال هست.

محمد نصیری

بله دقیقا خیلی مهم هست که با حروف بزرگ باشه ، لینوکس بر خلاف ویندوز Case Sensitive هست یعنی ENV با env دو تا چیز کاملا متفاوت هستن ، دقیقا باید بزرگ باشه

علی  محبوبی نژاد

بله دیگه بعد از گذارندن دوره اسنشیال با شما و شروع کردن این دوره با شما این مطلب ساده رو متوجه بودم.

بیشتر برام سوال بود در تعریف متغیر های محیطی حتما باید حروف ِ بزرگ باشه؟ که ظاهرا میفرمایید بله.

محمد نصیری

بله بدون شک باید دقیقا بزرگ باشن ، حالا جلوتر در LPIC2 کد 202 می بینید که مثلا ما در Squid Cache یک جا داریم که اگر مثلا بنویسیم required به عنوان یک اسم در نظر گرفته میشه و اگر به صورت REQUIRED نوشته بشه یک Rule الزام آور معنی میده.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....