یوشا

وبگاه دست نوشته ها و تجربیات شخصی

یوشا

وبگاه دست نوشته ها و تجربیات شخصی

یوشا

دکتر مصطفی چمران: می گویند تقوا از تخصص لازمتر است، آنرا می پذیرم، اما می گویم: آنکس که تخصص ندارد و کاری را می پذیرد، بی تقواست!

بایگانی
تبلیغات
Blog.ir بلاگ، رسانه متخصصین و اهل قلم، استفاده آسان از امکانات وبلاگ نویسی حرفه‌ای، در محیطی نوین، امن و پایدار bayanbox.ir صندوق بیان - تجربه‌ای متفاوت در نشر و نگهداری فایل‌ها، ۳ گیگا بایت فضای پیشرفته رایگان Bayan.ir - بیان، پیشرو در فناوری‌های فضای مجازی ایران

۷۱ مطلب با موضوع «کامپیوتر :: نرم افزار» ثبت شده است


سیستم عامل سبک و کوچیک، بر پایه لینوکس v2 برای فلاپی یا سی دی: 3>

۵ نظر ۹۱/۰۹/۱۵
یوشا آل ایوب

بالاخره بعد ها مدتها انتظار نسخه 14 لینوکس اسلکور ترخیص شد!

 

لینوکس اسلکور قدیمی‌ترین و پایدارترین توزیع آزاد و متن‌باز همچنان زنده و اولین توزیع به طور گسترده مورد استفاده قرار گرفته‌‌ی لینوکس است، که به صورت رایگان عرضه می‌شود و توانسته شهرتی جهانی کسب کند. این سیستم عامل در ویرایش های مختلف و بر مبنای نیازهای کاربران عرضه شده است. برنامه‌های منتشر شدهٔ همراه لینوکس اسلکور، از میان پایدارترین برنامه‌ها انتخاب شده و با تنظیمات اصلی توسعه‌دهنده‌ی آن و بدون تغییر انتشار می‌یابند. تفاوتی که در مقایسه با دیگر توزیع‌های لینوکس، باعث پایداری بی‌رقیب اسلکور شده‌ است! این تفاوت در کیفیت ارائه هسته لینوکس به صورت وانیلی، با هدف تقابل کاربر با هسته لینوکس و همچنین در انتخاب و تغییرات دسکتاپ ها ارائه شده نیز، حتی در ویرایش جاری نیز مشهود است.

 

ارتقای سرعت و کیفیت عملکرد، بهبود سازگاری با فناوری های مختلف شبکه و ارائه مجموعه ای از نرم افزارهای رایگان مناسب در کنار این محصول از جمله مزایای آن نسبت به نسخه قبلی است. علاقمندان در صورت دسترسی به اینترنت پرسرعت می توانند نسخه جدید سیستم عامل اسلکور را دانلود کنند.

 

تغییرات اخیر:

نسخه x86

نسخه x64

دانلود ISO:

ftp://ftp.slackware.com/pub/slackware-iso

دانلود Torrent:

http://slackware.com/getslack/torrents.php

مستندات:

http://docs.slackware.com

 

۴ نظر ۹۱/۰۸/۱۵
یوشا آل ایوب

 

بنچمارک یک صفحه ساده PHP با کمترین تگهای PHP: (مثل <? <?php ...)

0.50850105291
0.52559566562
0.54722023014
0.84710311898
0.87499809271
0.91791343696
0.93081188242
0.91518020635
0.91901159286
0.94415044785

همون صفحه ساده PHP با بیشترین تگهای PHP:

0.55940341953
0.56219291694
0.64270687157
0.72870445253
0.83770942696
0.86040687561
0.94139766698
0.93767976765
0.94624137873
0.96417045592
۰ نظر ۹۱/۰۷/۲۲
یوشا آل ایوب

1- صفحات را با استفاده از استاندارد HTML4 و HTML5 به اندازه توان مرورگر طراحی کنید.

2- تمام صفحات ایستا(HTML) را بررسی، ارزیابی و آزمایش کنید تا عاری از مشکل باشد.

3- از نرم افزارهای مدیریت سورس(VCM) مثل Git, Svn, TFS برای مدیریت کدها و version ها استفاده کنید.

5- مکانیزم و شیوه کار پروتوکل HTTP رو کامل یاد بگیرید.

6- حتاالمکان با استفاده از CSS طرح بصری ایجاد کنید نه با تصاویر.

۲ نظر ۹۱/۰۷/۱۵
یوشا آل ایوب

 

ماژول، قطعه ی نرم افزاری در بخشی جدا از Core سیستم هستش که در زمان فراخوانی، پیوند و فعال میشه و یکسری عملیات تعریف شده ای رو انجام میده.
این ماژول می تونه سرویس باشه، filesystem باشه، پروتکل شبکه باشه، تعدادی System call باشه و یا درایور یک سخت افزار باشه; که در هر صورت ماژول نام داره.

۲ نظر ۹۱/۰۵/۳۰
یوشا آل ایوب


این مقاله آموزش آسان نصب لینوکس Slackware نسخه های 11 تا 14 هستش. برای کسب اطلاعات بیشتر درمورد لینوکس Slackware و تاریخچه این سیستم عامل میتونید به لینکهای زیر مراجعه کنید:

http://en.wikipedia.org/wiki/Slackware

http://slackware.com

توجه: از انجایی که لینوکس Slackware یک توزیع حرفه ای و بمعنای واقعی unix-like هستش، اگر از کاربران Mac OS هستید که بتازگی به گنو/لینوکس کوچ کردید پیشنهاد میکنم از توزیع elementary OS استفاده کنید. اگر هم از کاربران Windows هستید Linux Lite یا Linux Mint توزیع های مناسبتری هستن.

 

مقالات مرتبط:

7 تصور اشتباه درباره لینوکس Slackware

پیکربندی گنولینوکس: init و runlevel

 

فهرست مندرجات:

  • سیستم مورد نیاز
  • دریافت لینوکس Slackware
  • آماده سازی سیستم
    • نصب از طریق Floppy
    • نصب از طریق NFS (شبکه)
    • نصب از طریق CD/DVD یا USB
  • پارتیشن بندی دیسک
  • نصب لینوکس Slackware
  • تنظیم محیط گرافیکی
  • رفع مشکلات

۱ نظر ۹۱/۰۵/۲۵
یوشا آل ایوب

 

در این مقاله(ها) قصد دارم برنامه نویسی هسته لینوکس 2 و 3 رو آموزش بدم.

اول برخی از اصول سیستم عامل و هسته لینوکس(از جمله Version های هسته، دانلود سورس، ساختمان دایرکتوری سورس، چگونگی نصب، Patch کردن، پیکربندی و Compile) رو معرفی می کنم و بعد به مباحث پیشرفته و برنامه نویسی(از قبیل تفاوت بین kernel-space و User-space، سازه های برنامه نویسی استفاده شده در هسته، Process ها، System-call ها، ساختمان داده هسته، Interrupt handler ها، همگاه سازی، مدیریت Time، مدیریت حافظه، سیستم فایل و خروجی/ورودی) می پردازم.

در این بین از کتابهای Advanced Linux programming، Linux Advanced Administration و Linux Kernel Development هم بهره ای می گیرم.
 

فهرست مندرجات:

  • تعریف سیستم عامل
  • انواع معماری سیستم عامل
  • تعریف هسته
  • انواع معماری هسته

۴ نظر ۹۱/۰۴/۳۰
یوشا آل ایوب

ExeStrip

این برنامه Header/Stup [داس] رو از فایل های Exe جدا می کنه.

BootSectorWriter

این برنامه 512 بایت از داده یا فایل رو روی سکتور بوت Write می کنه. (هارددیسک و فلاپی دیسک)

۰ نظر ۹۱/۰۴/۱۵
یوشا آل ایوب

1- کدهای اصلی باید قطعه قطعه و به واحدهای مستقل تقسیم بشن.

2- کدهای تست باید مستقل از دیگر کدهای تست و محیط اجرایی باشن.

3- در کدهای تست باید از نقل/انتقال اطلاعات حجیم خودداری کرد تا پروسه تست بسرعت انجام بشه.

4- کدهای تست باید بروز باشن و با هر تغییر جدی روی کدهای اصلی باید تغییر کنند.

5- هر قطعه کد تست باید کوتاه، قابل فهم و خوانا باشه.

6- حجم کل کدهای تست تولید شده معمولاً باید 2 برابر حجم کدهای اصلی باشه. (یعنی برای همه موارد تست نوشته شده باشه)

7- کدهای تست باید در همان روزی که کدهای اصلی پروژه نوشته میشن تولید بشن.

8- تست case ها باید کدها، متد ها و قابلیت های پروژه رو به سخت ترین شکل به چالش بکشن.

9- بدلیل مسایل امنیتی و کاهش تهدیدها، Tester نباید به داخل کدها و مکانیزم سیستم دسترسی داشته باشه.

10- بهتره کدهای تست به خارج از محدوده پروژه dependency نداشته باشن.

 

 

۳ نظر ۹۱/۰۳/۳۰
یوشا آل ایوب

وقتی برنامه ای را تایپ می کنید، یک فایل سورس(Source) ایجاد می کنید. یعنی صفحه ای با متونی شبیه به زبان لاتین که فقط برنامه نویس متوجه آن خواهد شد. این صفحه کاری نمی کند و کامپیوتر هم متوجه محتوای آن زبان نمی شود. باید پردازش و عملیاتی(از قبیل ترجمه) انجام گیرد تا این صفحه تبدیل به زبانی شود که کامپیوتر بتواند آنرا درک کند و برنامه قابل اجرایی را تولید کند(مانند فایلهای سیستم).

اولین مرحله در پردازش(ایجاد برنامه)، استفاده از ویرایشگر متنی برای نوشتن کدهای C++ می باشد. شما فایل Source رو به زبان C++ که شبیه به معماری کامپیوتر هست می نویسید(به لاتین). بعد باید آنرا به زبان و دستورالعمل های ماشینی(Machine language) تبدیل کنید. این کار بعهده کامپایلر می باشد. کامپایلر برای اینکار عملیات زیر را انجام می دهد:
(برای درک بهتر این موضوع، بر روی یک کامپایلر Open source(منبع باز/متن باز) کار کنید)

ابتدا فایل سورس(Source) خوانده می شود و به تعدادی علایم پیش پرازش(Preprocessor token)(عناصری که کامپایر می تواند با آنها کار کند. مثل عمگر ها، ثابتها، کلمات کلیدی و...) و کاراکتر های سفید(Blank)(شامل فضاهای خالی، Tab ها و Comment ها) تبدیل می شود. در این مرحله کاراکتر های ویژه(Special) تبدیل می شوند و عبارات جدا که دو یا چند خط اشغال نمودند به یکدیگر پیوند می خورند.

سپس دستورات پیش پردازنده(# دار ها) اجرا می شوند. این دستورات شامل include, define if و... می باشد. در این مرحله تمامی دستوات و ماکروها Expand می شوند و عملیات و ضمیمه های لازم انجام می گیرد.

بعد پردازش کاراکترها و رشته ها انجام می گیرد. در این مرحله برنامه برای صحت شکل گرامری(Syntax) و لغات، تجزیه و تحلیل می شود(خطاها و هشدارهای Syntax در این مرحله نمایان می شود). اگر اشتباهات مهلک(Fatal) پیدا نشود، یک فایل تجزیه/تحلیل شده(معمولاً با پسوند obj) تولید می شود، تا با بقیه فایل ها ترکیب شود.

دستور پیش پردازنده #include در هر لحظه می تواند چندین فایل را داخل برنامه ادغام(Merge) کند. و هر بار که کامپایلر به این دستور برخورد می کند، به اندازه محتوایش موقتاً پردازش را متوقف(Halt) می کند. (همینکار رو زبان های دیگه مثل PHP, C# , Python, PERL و... انجام می دهند)

در آخرین مرحله(ایجاد برنامه قابل اجرا)، پردازش فایل تولید شده(obj) توسط یک پیوند دهنده(Linker یا Link) انجام می شود. اکثر برنامه ها دارای رجوعاتی به روتین(Routine) می باشند که در خارج از برنامه جاری وجود دارند. این روتین ها باید آدرس یابی و به برنامه شما اتصال داده شوند تا بتوان با آنها کار کرد.
پیوند دهنده(Linker) تمامی فایلها را با هم ترکیب می کند و در نتیجه یک برنامه قابل اجرا تولید می شود.

 

لازم بذکر هست که تمامی این مراحل توسط کامپایلر انجام می شود. و شما فقط کد نویسی می کنید و بعد با یک کلیک بر روی Build/Make برنامه را تولید می کنید. (در کامپایلرهای GUI)

۰ نظر ۹۱/۰۳/۱۵
یوشا آل ایوب