پیونددهنده

پیوندده (به انگلیسی: linker) برنامه‌ای است که قطعه‌برنامه‌های (ترجمه (رایانه) شده) و پرونده‌های داده‌ای را برای ایجاد یک برنامه اجرایی با یکدیگر پیوند می‌دهد. این برنامه می‌تواند کارهای دیگری هم انجام دهد مثلاً ایجاد کتابخانه‌ها.
به این قطعات کوچک که ممکن است به تنهایی قابل اجرا نباشند، آبجکت‌فایل گفته می‌شود.
در سکوهای یونیکس پیوندده را اکثراً Loader می‌نامند.
این نام‌گذاری برای قائل شدن تفاوتی بین زمان اجرا یا زمان کامپایل پروسه‌است.
البته در بعضی سیستم‌عاملها این دو کار توسط یک برنامه انجام می‌شود. (لینک پویا)
برنامه‌های کامپیوتری معمولاً از چندین قطعه یا آبجکت‌فایل تشکیل می‌شوند؛ و معمولاً فایل واحدی به قطعات دیگر ارجاع می‌دهد.
لینکر همچنین می‌تواند از آبجکت‌فایلهای موجود در مجموعه‌ای واحد موسوم به کتابخانه استفاده کند.
معادل پیوندده از فرهنگ تشریحی کامپیوتر (داریوش فرسایی)، دانشیار ۱۳۷۹ خ است.
در محاسبات، یک پیوند دهنده یا ویرایشگر پیوند یک برنامه سودمند رایانه ای است که یک یا چند فایل شیء تولید شده توسط یک گردآورنده را دریافت کرده و آنها را به یک فایل اجرایی تکی، فایل کتابخانه یا یک فایل «شی» دیگر تبدیل می‌کند.
یک نسخه ساده‌تر که خروجی خود را مستقیماً در حافظه ثبت می‌کند بارگذار نامیده می‌شود، هر چند بارگذاری به‌طور معمول به عنوان یک فرایند جداگانه در نظر گرفته می‌شود.

پیوند ایستا

پیوند ایستا نتیجه این عمل پیوند دهنده است که همه برنامه‌های کتابخانه مورد استفاده در برنامه را به تصویر اجرایی کپی می‌کند. این ممکن است نیاز به فضای دیسک و حافظه بیشتری نسبت به پیوند پویا داشته باشد، اما قابل حمل تر است، چرا که نیازی به حضور کتابخانه روی سیستم مورد نیازش و در جایی که اجرا می‌شود نیست. پیوند ایستا همچنین " DLL HELL " را از بین می‌برد، زیرا هر برنامه دقیقاً نسخه‌هایی از کتابخانه‌های مورد نیاز را فراهم می‌کند که تداخلی با برنامه‌های دیگر ندارند. یک برنامه که فقط چند روال از یک کتابخانه را استفاده می‌کند نیازی به نصب کل کتابخانه ندارد.

نقل مکان

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

ویرایشگر پیوند

در IBM System / 360 محیط های اصلی مانند OS / 360، از جملهz / OS برای رایانه‌های z / Architecture ، این نوع برنامه به عنوان یک ویرایشگر پیوند شناخته می‌شود. همان‌طور که از نام نشان می‌دهد یک ویرایشگر لینک دارای قابلیت اضافی اجازه دهی می‌باشد. علاوه بر این، جایگزینی و / یا حذف بخش‌های برنامه‌های فردی نیز از دیگر قابلیت‌های آن می‌باشد. سیستم‌های عامل مانند OS / 360 دارای فرمتی برای load-modulesهای اجرایی هستند که حاوی اطلاعات تکمیلی در مورد جزء جزء یک برنامه هستند، به طوری که می‌توان یک بخش خاص و جداگانه برنامه را جایگزین کرد و سایر قسمت‌های برنامه به روز می‌شود تا آدرس‌ها و سایر مراجع قابل انتقال با استفاده از ویرایشگر پیوند به عنوان بخشی از روند، اصلاح می‌شود.
یک مزیت این امر ان است که اجازه می‌دهد یک برنامه بدون نیاز به نگه داشتن تمامی پرونده‌های شیء میانجی یا بدون نیاز به گردآوری دوباره بخش‌هایی از برنامه که تغییر نکرده باشند نگهداری شود. همچنین اجازه می‌دهد به روز رسانی برنامه‌ها در قالب فایل‌های کوچک توزیع شود (در اصل عرشه کارت‌ها)، که تنها شامل پیمانه شی که باید جایگزین شود می‌باشد. در چنین سیستمی، کد شیء در شکل و فرمت ۸۰ بایت تصاویر کارت پانچ قرار دارد، به طوری که به روزرسانی‌ها می‌توانند در یک سیستم با استفاده از آن رسانه معرفی شوند. در نسخه‌های بعدی OS / 360 و در سیستم‌های بعدی، بار-پیمانه‌ها شامل اطلاعات اضافی در مورد نسخه‌های پیمانه‌های اجزای سازنده، برای ایجاد یک مدرک قابل پیگیری از به روز رسانی است.
اصطلاح «ویرایشگر پیوند» نباید به معنای این باشد که برنامه در یک حالت تعاملی کاربر مانند یک ویرایشگر متن عمل می‌کند. این برنامه برای اجرای بیتی در نظر گرفته شده‌است؛ دستورات ویرایش توسط کاربر در فایل‌های متوالی سازماندهی شده مانند کارت‌های پانچ، DASD یا نوار مغناطیسی عرضه می‌شود و نوارها اغلب در هنگام نصب اولیه سیستم عامل استفاده می‌شوند.