یوشا

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

یوشا

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

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

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

۱۴ مطلب با موضوع «سخت افزار» ثبت شده است

برای بزرگنمایی کلیک کنید

اینفوگراف شاخه های جرم یابی دیجیتال

 

برای بزرگنمایی کلیک کنید

اینفوگراف مراحل انجام جرم یابی دیجیتال

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

تعریف جرمیابی دیجیتال: به مجموعه فرایند جمع آوری، ارزیابی و ارائه مدارک جمع آوری شده از تجهیزات دیجیتال گفته میشود.

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

این حوزه کاری زیر مجموعه امنیت سایبری می باشد و به فرد متخصصی که در این حوزه کار میکند متخصص جرمیابی دیجیتال و واکنش به حوادث گفته میشود.

(به انگلیسی Digital Forensics and Incident Response (DFIR))

 

برای بزرگنمایی کلیک کنید

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

دسترسی به GPU از طریق جاوا، باعث افزایش توان و قدرت قابل‌ توجهی در برنامه می‌شود. در این مقاله نحوه‌ی کار GPU و نحوه‌ی دسترسی به GPU از طریق جاوا را توضیح میدهم.


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

 

 فهرست/مندرجات
    • مقدمه
    • اجرای برنامه‌ها بر روی GPU
    • ظهور GPGPU
    • OpenCL و Java
    • CUDA و Java
    • ماندن در بالای کد low-level
    • نتیجه‌گیری

 

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

مسئله Thread و Process دو موضوع نزدیک به هم ولی متفاوت هستن...

 

1- Process مستقل هستش، ولی Thread ها بخشی از یک Process هستن. (یعنی یک Process میتونه چندین Thread بوجود بیاره)
2- هر Process حافظه اختصاصی خودش رو داره، ولی Thread ها از حافظه اشغال شده Process استفاده می کنن. (یعنی هر Process حافظه خودش رو با Thread های خودش به اشتراک میذاره)
3- هر Process شامل یک برنامه و PID انحصاری هستش، ولی هر Thread شامل مجموعه ای از دستورالعمل ها و Stack انحصاری هستش.
4- هر Process درواقع یک Task هستش، ولی هر Thread یک Light wight process هستش.
5- Process ها توسط IPC (یا همون Inter-process communication) با یکدیگر ارتباط برقرار می کنن، ولی Thread ها توسط دستورات برنامه نویسی (در زبان PHP و Java توسط wait, notify و در زبان C توسط pthread_cond_wait, pthread_cond_signal) با یکدیگر ارتباط برقرار می کنن.
6- ساخت Process به سختی توسط duplicate کردن Process والد انجام میشه، ولی ساخت Thread براحتی توسط کپی شی Thread انجام میشه.
7- برای اجرای چند Process بطور موازی/parallel به یک سیستم Multi-Process نیاز هست، ولی برای اجرای چند Thread بطور همزمان به دستورات برنامه نویسی نیاز هست.
8- بطور کلی Process توسط CPU کنترل میشه، ولی Thread توسط Process کنترل میشه.
9- هر Process یک Thread main داره، ولی هر Thread فقط خودشه که کارگر/worker صدا زده میشه.
10- Process در فضای separate memory اجرا میشه، ولی Thread در فضای Shared memory اجرا میشه.
و...

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

- برآورد مشکلات سیستم

- بررسی کلی سخت افزار

- بررسی کلی نرم افزار

 

سخت افزار

- پاکسازی داخل سیستم و مادربورد

- سرویس CPU و فن CPU

- سرویس Power supply و فن Power supply

- پاکسازی موس، کیبورد و مانیتور

- تهیه باطری جدید برای CMOS/BIOS

- پاکسازی سوکت ها و پورت های سیستم

[- قطع و غیرفعال کردن مودم Dialup]

[- قطع و غیرفعال کردن درایو Floppy]

- تعویض کابلهای کهنه/آسیب دیده

- ریست و تنظیم مجدد مانیتور

- بررسی کابلهای داخل و بیرون سیستم

 

نرم افزار

- بک آپ گیری از اطلاعات!

- آپدیت Firmware مادربورد(BIOS EEPROM)

- ریست و تنظیم مجدد BIOS/CMOS

- فرمت(wipe) دوره ای عمقی پارتیشن ها یا کل دیسک

- نصب مجدد سیستم عامل

- تنظیم سیستم عامل

[- ریستارت سیستم عامل بعد از انجام تنظیمات]

- تنظیم تاریخ و ساعت سیستم

- نصب نرم افزارهای کتابخانه ای/Runtime

- دانلود [و رایت] و نصب Driver ها

- حذف نرم افزارهای بلااستفاده و مزاحم

- پاکسازی فایلها و پوشه های اضافی و temp

[- بهینه سازی و تنظیم رجیستری]

- نصب و بروزرسانی نرم افزارهای کاربردی

- نصب ضدبدافزار سبک و قدرتمند

- بروزرسانی ضدبدافزار

- اسکن کل پارتیشن ها توسط ضدبدافزار

- بهینه سازی تنظیم سرویس ها

- Defrag/Optimize پارتیشن ها(بجز SSD ها)

- پاکسازی و تنظیم startup سیستم عامل

- پاکسازی system restore point ها

 

شبکه

- پاکسازی کش DNS و ریست Socket سیستم

- آپدیت Firmware مودم ADSL/DSL

- تنظیم subnet mask مودم به 255.255.255.128 یا بالاتر

- تنظیم Subnet prefix مودم به 25

- تنظیم DNS مودم به 1.1.1.1 و 8.8.8.8

- تنظیم Security protocol مودم به WPA2 یا WPA3

- خاموش کردن قابلیت WPS مودم

- پنهان کردن SSID مودم

 

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

 

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

 

  1. باید مشخصات فنی و قطعات داخلی لپ تاپ رو مناسب با نوع کاریری تون انتخاب کنید. برای برنامه نویسی و کارهای پردازشی: CPU Intel, Storage SSD. برای بازی و کارهای گرافیکی: CPU AMD, VGA AMD و مانیتور حرفه ای
  2. باید لپ تاپ حداقل یک سوکت USB3، یک سوکت HDMI، یک سوکت شبکه داشته باشه.
  3. باید سیم شارژ لپ تاپ بلند باشه.
  4. نباید فاصله کلیدهای F1-F12 از کلید های زیرین کم باشه.
  5. باید لپ تاپ چراغهای status برای hard, power, wifi و... رو داشته باشه.
  6. نباید داخل صفحه مانیتور پیکسل های سوخته داشته باشه. (نقطه های ریز سیاه)
  7. نباید لبه پایین لپ تاپ(محل قرار گیری دست ها) برجسته باشه.
  8. نباید پیچ های پشت لپ تاپ زخم یا خوردگی داشته باشن.
  9. باید فاصله مناسبی بین کلیدهای اصلی کیبورد وجود داشته باشه. (به هم چسبیده نباشن)
  10. نباید محل نصب CPU در زیر محل قرارگیری دست ها باشه.
  11. باید نوع معماری سی پی یو Intel64 یا AMD64 باشه.
  12. درصورت داشتن گارانتی، نباید برچسب ها و هولوگرام های پشت لپ تاپ پارگی یا لکه داشته باشن.
  13. درصورت داشتن گارانتی، مطمعن بشید که شماره سریال روی جعبه دستگاه و روی بدنه دستگاه با شماره سریال روی کارت گارانتی یکسان باشن.
  14. درصورت آکبند بودن دستگاه، نباید تاریخ شروع و پایان گارانتی گذشته باشه.
  15. باید RAM لپ تاپ حداقل 4 یا 8 گیگابایت باشه.
  16. باید RAM لپ تاپ از نوع DDR4 یا بالاتر باشه.
  17. باید عمر باطری حداقل 8 ساعت باشه.
  18. نباید وزن لپ تاپ بیش از حد سنگین باشه.
  19. بهتره RAM لپ تاپ قابلیت ارتقا داشته باشه و fix نباشه.
  20. بهتره که صفحه ی نمایش مات باشه و نور محیط رو انعکاس نده.
  21. بهتره که کلیدهای End, Page UP/Down, Insert, Delete مستقل باشن و ترکیبی نباشن.
  22. بهتره که نوع صفحه نمایش HD یا Full HD باشه.
  23. بهتره که لپ تاپ نوع صدای دالبی هم داشته باشه.
  24. اگر نوع کاربری تون Gaming هست، باید کیبورد لپ تاپ از نوع 4 کلید همزمان باشه.
  25. بهتره صفحه کلید لپ تاپ بدنه تلقی و مجزا نداشته باشه.
  26. بهتره که لپ تاپ کیبورد اعداد (NumPad) هم داشته باشه.
  27. بهتره که کلید های Capslock و Numlock چراغ status داشته باشن.
  28. بهتره که CPU لپ تاپ از نسل های جدید CPU باشه.
  29. بهتره لپ تاپ CD/DVD درایورها رو هم داشته باشه تا مجبور نشید از اینترنت دانلود کنید.
  30. بهتره که سایز مانیتور لپ تاپ حداقل 15 اینچ باشه. (17 اینچ برای برنامه نویسی/طراحی)
    • نکته: هرچقدر که سایز مانیتور بزرگتر باشه، مصرف باطری هم بیشتر میشه.
  31. بهتره که لپ تاپ با سیستم عامل گنولینوکس هم سازگار باشه.
  32. اگر از سیستم عاملهای گنولینوکس استفاده می کنید باید قطعات و درایورها با گنولینوکس سازگار باشن.
  33. بهتره که باطری لپ تاپ قابلیت جدا شدن داشته باشه. (یعنی در داخل لپ تاپ پیچ نشده باشه)
  34. بهتره که لپ تاپ Webcam هم داشته باشه.
  35. بهتره که لپ تاپ از boot نوع BIOS/Legacy هم پشتیبانی بکنه.
  36. بهتره storage لپ تاپ از نوع SSD باشه.
  37. بهتره که لپ تاپ امکان بلوتوث هم داشته باشه.
  38. بهتره که لپ تاپ استوک نباشه.
    • نکته: لپ تاپ استوک به لپ تاپ های دست دومی گفته میشه که پلمپ شون باز شده، کمی استفاده و بعد فروخته شده یا پلمپ شون باز شده اما استفاده نشده و به انبار مرجوع شده.
  39. بهتره بدنه لپ تاپ فلزی نباشه تا در مقابل فرورفتگی و برق اتصال به بدنه مقاوم باشه.

 

نکته: منظور از Core همون هسته های فیزیکی(چیپ) هستش که داخل CPU قرار دارن و هرکدوم میتونن یک دستورالعمل(مثلاً برنامه) رو به تنهایی پردازش کنن. هسته ها قادرن هرکدوم به تنهایی و بصورت موازی یک برنامه رو اجرا کنن. مثلاً یک CPU با 4 هسته فیزیکی قادره 4 برنامه رو بصورت موازی اجرا کنه ولی بیشتر از 4 برنامه، دستورالعمل های برنامه بین همه هسته ها تقسیم میشه.

نکته 2: منظور از Thread (در حوزه سخت افزار) هسته های مجازی/نرم افزاری هستش که داخل Core قرار دارن و هرکدوم میتونن یک دستورالعمل(مثلاً برنامه) رو پردازش کنن. بنابراین یک CPU با 4 Core درواقع 8 هسته داره. 4 هسته فیزیکی و 4 هسته مجازی. به این عمل Hyperthreading هم گفته میشه.

نکته 3: CPU های دارای Turbo frequency قادرن بصورت اتوماتیک قدرت پردازشی خودشون رو افزایش بدن. مثلاً از 3.10GHz به 4.10GHz (درصورتیکه دما، باطری و... در حد مناسبی باشه)

نکته 4: Cache CPU حافظه لطیف و موقتی CPU هست که دستورالعمل های تکراری برنامه های کاربر رو در خودش ذخیره میکنه و مستقیماً از انجا دستورالعمل ها رو پردازش میکنه(بجای Hard Disk یا RAM). بنابراین باعث افزایش سرعت پردازش تا چند برابر میشه.

نکته 5: کلمه K در مشخصات فنی CPU معرف Unlock هستش، یعنی این CPU قفل نشده و قابلیت Overclocking رو داراست.

نکته 6: Resolution (رزولوشن) به تعداد پیکسل های موجود درون صفحه گفته میشه که بصورت عمودی و افقی در صفحه چیده شدن. در واقع هر چی رزولوشن صفحه نمایش بیشتر باشه، کیفیتش هم بالاتره. رزولوشن  مثل 1024x768 یا 240x320

نکته 7: Screen size (سایز صفحه) به اندازه فیزیکی صفحه نمایش گفته میشه که برحسب اینچ توسط قطر صفحه محاسبه میشه. هرچی بیشتر باشه، اندازه صفحه هم بزرگتره. مثل "15 یا "17

نکته 8: Color depth (عمق رنگ) به مجموع رنگ هایی که صفحه نمایش امکان نمایش شون رو داره گفته میشه. هرچی بیشتر باشه، کیفیت و زیبایی تصاویر هم بیشتر میشه. مثل 32bit یا 16bit

نکته 9: برای تشریح مشخصات CPU های Intel به این صفحه مراجعه کنید. https://intel.com/content/www/us/en/processors/processor-numbers.html

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

برای حل مشکلات ADB گوگل با درایور گوشی بصورت زیر عمل کنید:

  • ابتدا به مسیر نصب شده Android SDK برید.
  • بعد روی برنامه SDK Manager کلیک راست و گزینه Run as administrator رو انتخاب کنید تا برنامه باز بشه.
  • نکته: دلیل Run as administrator بخاطر مسایل دسترسی و نصب ابزارهای اندروید هستش.
  • حالا صبر می کنید تا لیست ابزارها load بشه... بعد روی گزینه Deselect all کلیک کنید.
  • سپس روی گزینه Extras کلیک کنید و ابزار Google USB Driver رو تیک بزنید. در آخر دکمه Install 1 package رو بزنید تا دانلود بشه.

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

 

1- هرگز روی سیستمی که کمتر از 2 گیگ RAM داره ویندوز نسخه 64 بیتی نصب نکنید. چون اینکار بیشتر باعث کند شدن ویندوز میشه.

ویندوزهای نسخه 64 بیتی به حداقل ۴ گیگ RAM نیاز دارن.

 

2- حتاالمکان روی سیستمی که 8 گیگ یا بیشتر RAM داره ویندوز نسخه 32 بیتی نصب نکنید. درغیراینصورت فقط 4 گیگ RAM توسط CPU قابل دستیابی هستش و بقیه RAM بدون استفاده باقی می مونن.

 

3- درسیستم های BIOS یا پارتیشن نوع MBR/DOS، بهتره در حین نصب ویندز فقط درایو نصب ویندوز رو پارتیشن بندی کنید و بقیه درایوهارو از داخل خود ویندوز(بعد از نصبش) پارتیشن بندی کنید. اون هم از نوع Logical.

با اینکار پارتیشن های Primary بیشتری براتون باقی می مونه... و برای نصب سیستم عامل دوم و سوم به مشکل نمی خورید.

نکته: این موضوع راجب سیستم های UEFI یا پارتیشن نوع GPT صدق نمیکنه.

 

3- هرگز از درایو اصلی ویندوز(که ویندوز داخلش نصبه) برای ذخیره اطلاعت شخصی(مثل عکس، فیلم، موسیقی و...) استفاده نکنید.

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

 

4- اگر از لپ تاپ استفاده می کنید، برای افزایش قدرت لپ تاپ و استفاده از تمام توان دستگاه اون رو به حالت Maximum performance تنظیم کنید.

نکته: در زمانهایی که لپ تاپ از باطری بجای برق مستفیم تغذیه میکنه، از حالت Maximum battery life یا Battery saver استفاده کنید.

در ویندوز Xp و ویندوز 7: به مسیر Start -> Control panel برید و در پنجره باز شده گزینه System and Security رو انتخاب کنید. سپس روی گزینه Power Options کلیک و در پنجره جدید Maximum performance رو انتخاب کنید.

در ویندوز 8 و ویندوز 10: در سمت راست نوار استارت روی آیکون باطری کلیک کنید سپس گزینه Maximum performance رو انتخاب کنید.

 

5- بصورت پیشفرض، ویندوز DLL برنامه های باز و بعد بسته شده رو [بخاطر افزایش سرعت باز کردن مجدد اون برنامه] unload نمی کنه. که اینکار باعث اشغال حافظه و گاهی کندی میشه. برای تغییر این رفتار، میتونید دستورالعمل زیر رو انجام بدید:

- ابتدا برنامه RegEdit رو در مسیر X:\Windows\RegEdit پیدا و اجرا کنید.

- سپس به آدرس HKEY_LOCAL_MACHINE -> Software -> Microsoft -> Windows -> CurrentVersion -> Explorer برید.

- حالا بر روی صفحه راست کلیک و گزینه New -> DWORD(X bit) value رو انتخاب کنید. و نامش رو بذارید AlwaysUnloadDLL

- در آخر روی همین گزینه دوبار کلیک و Value data رو 1 قرار بدید.

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