سفر خاک

یادداشت های غلامحسین توسلی

سفر خاک

یادداشت های غلامحسین توسلی

جز غبار از سفر خاک چه حاصل کردیم؟ / سفر آن بود که ما در قدم دل کردیم

۴ مطلب با کلمه‌ی کلیدی «library» ثبت شده است

چهار لینک کوتاه

۱۶
ارديبهشت

  • Snabb Switch: جعبه ابزاری متن باز برای پردازش شبکه - مناسب برای استفاده در ISP ها
    از ویژگی‌های این جعبه ابزار می توان به پردازش میلیون ها بسته اترنت در ثانیه اشاره کرد. این نرم افزار قادر است تا به صورت بومی (native) با سخت افزار اترنت، Hypervisors و هسته لینوکس ارتباط برقرار کند. این پروژه کاملا متن باز بوده و بر روی سیستم عامل لینوکس در فضای کاربر (userspace) قابل اجراست. جالبه بدونید
  • غلامحسین توسلی

برای یک برنامه کاربردی که با زبان ++C نوشتم نیاز به ارتباط رمزنگاری شده با برنامه‌ای دیگه پیدا کردم که منجر شد به  استفاده از کتابخانه ++Crypto. ممکنه بپرسید چرا ++C. خوب یه دلیل بیشتر نداره! واسه نوشتن برنامه Desktop چارچوب Qt رو به زبان هایی مثل Net. و جاوا ترجیح میدم! ++Crypto یک کتابخانه رمزنگاری رایگان به زبان ++C است. یه ریزه کامپایلش تو ویندوز کار داره. بعد از معرفی اجمالی نحوه کامپایل این کتابخانه رو تو ویندوز توضیح میدم.

  • غلامحسین توسلی

iptables در پروژه Netfilter توسعه داده شده و از لینوکس 2.4 به بعد (سال 2001) به عنوان بخشی از هسته لینوکس در دسترس کاربران قرار داده شده است. در این سری پست‌ها قصد آموزش iptables رو ندارم. به اندازه کافی منابع خوب واسش هست. (مثلا این واسه شروع خوبه) قصد دارم اینجا تنها تجارب شخصی خودم رو منتشر کنم.
اغلب کاربران میان دو اصطلاح iptables و netfilter دچار سردرگمی می‌شوند. حداقل من که این مشکل رو داشتم! Netfilter نام پروژه رسمی برای تمامی امکانات فیلتر کردن بسته‌های شبکه در لینوکسه. همچنین Netfilter چارچوبی رو در درون هسته لینوکس مهیا کرده که برنامه‌های دیگه می‌تونن از توابع تعریف شده در این چارچوب برای گیرانداختن! بسته‌ها در پشته شبکه استفاده کنن. شما با استفاده از این ابزار می توانید نرم افزاری بنویسید که به کلیه بسته های شبکه نظارت داشته و در صورت لزوم میتونه از ورود بسته های ناخواسته به سیستم جلوگیری کنه.
  • غلامحسین توسلی
LevelDB یک موتور پایگاه داده کلید-مقدار سریعه که توسط گوگل به زبان ++C به نگارش دراومده. در حقیقت سازندگان Google MapReduce و BigTable این کتابخانه را با تاکید بر روی دسترسی تصادفی کارا مبتنی بر هارد دیسک بوجود آوردند. این موتور به صورت متن باز عرضه شده. این پایگاه داده نگاشتی از کلیدهای رشته ای به مقادیر رشته ای فراهم می کنه. سوال اول اینه که تفاوت این پایگاه داده با پایگاه داده ای مثل MySQL چیه؟ خوب هر دو از هارد دیسک برای ذخیره سازی داده استفاده می کنند. هر دو یک پایگاه داده ماندگار (persistent) ایجاد می کنن؛ به این معنی که داده ها پس از ذخیره سازی و پایان برنامه بر روی هارد دیسک باقی می مونن.


فرق اصلی که بین این دو پایگاه داده وجود داره اینه که پایگاه داده MySQL یک پایگاه داده رابطه ایست که در آن شما می تونید با استفاده از Queryهای SQL با داده ها در پایگاه داده کار کنید؛ در حالی که LevelDB به شما یک پایگاه داده رابطه ای نمیده بلکه فقط یک پایگاه داده کلید - مقداره که داده ها را به صورت مرتب شده بر اساس کلید نگهداری می کنه. ...
  • غلامحسین توسلی