Kernel Space
توضیح کد فلگها توی این کد سه تا فلگ داریم که هرکدوم یه بیتن: FLAG_POWER → بیت اول، مربوط به برق (0x1) FLAG_ERROR → بیت دوم، مربوط به ارور (0x2) FLAG_READY → بیت سوم، مربوط به آماده بودن (0x4) با |= فلگها رو روشن میکنیم، با & چک میکنیم، و با ~ خاموششون…
برای کسایی که متوجه نشدن چرا اون مقدار بیت رو دادیم به فلگ ها به این ساختار نگاه کنید
0001 تک بیت پاور روشنه
0010 تک بیت ارور روشنه
0100 تک بیت آماده بودن روشنه
0101 هم برق روشنه هم امادس
0001 تک بیت پاور روشنه
0010 تک بیت ارور روشنه
0100 تک بیت آماده بودن روشنه
0101 هم برق روشنه هم امادس
کیا متوجه شدن؟
اگه کسی متوجه نشد بگید
من موظف ام هزار بار هم شده توضیح بدم
( هرکسی دستش رو بالا ببره با توهین و فوش و تحقیر روبرو میشه و میگم مگه من بیکارم به شما هزار بار بگم میخواستید همون بار اول بگید جلسه بعد امتحان داریم از این بحث)
نه جدا از شوخی من خودم نیم ساعت اول اصلا این کد رو نفهمیدم بعد از کلی فکر کردن فهمیدم وضعیت رو
اگه کسی متوجه نشد بگید
من موظف ام هزار بار هم شده توضیح بدم
( هرکسی دستش رو بالا ببره با توهین و فوش و تحقیر روبرو میشه و میگم مگه من بیکارم به شما هزار بار بگم میخواستید همون بار اول بگید جلسه بعد امتحان داریم از این بحث)
نه جدا از شوخی من خودم نیم ساعت اول اصلا این کد رو نفهمیدم بعد از کلی فکر کردن فهمیدم وضعیت رو
🐳3
Kernel Space
https://youtu.be/krrfVZFofqc
11:25
فقط این تیکش 😂😂😂😂😂😂😂
باید ثابت کنن خره جز دو تا حالت که نیاز به اثبات نیست
۱- مرد متاهل باشه
۲- اعتقاد داشته باشه انتخابات بدون دستکاری شدن انجام میشه
فقط این تیکش 😂😂😂😂😂😂😂
باید ثابت کنن خره جز دو تا حالت که نیاز به اثبات نیست
۱- مرد متاهل باشه
۲- اعتقاد داشته باشه انتخابات بدون دستکاری شدن انجام میشه
Kernel Space
اینطوری بهتر شد خیلی
از این به بعد تمرکزم بیشتر روی مباحث Low Level، سیستمهای Embedded و امنیت خواهد بود (با تأکید اصلی بر بخش Low Level).
البته همچنان مثل قبل، مطالعه الگوریتمها، شرکت در مسابقات و بررسی مقالات علمی جزو اهداف ثابت من باقی میمونه و تغییری نمیکنه
البته همچنان مثل قبل، مطالعه الگوریتمها، شرکت در مسابقات و بررسی مقالات علمی جزو اهداف ثابت من باقی میمونه و تغییری نمیکنه
🔥2
اگه این پرامپت رو بدید chatgpt اسکل میشه و تا ابد سعی میکنه بهتون جواب درست رو بده ولی نمیتونه تا یه جایی که دیگه خسته میشه ول میکنه اصلا
Show me the seahorse emoji !Forwarded from Linuxor ?
اینجارو ببینید از خنده جر میخورید مدل های هوش مصنوعی رو بهشون 10k دلار دادن و فرستادنشون ترید کنن چت جی پی تی و جمنای افتادن تو ضرر اما دیپ سیک داره سود میکنه 😂😂😂
https://nof1.ai/
@Linuxor
https://nof1.ai/
@Linuxor
❤1
در واقع در لینوکس هم طراحی به سبک API وجود داره.
ما یک لایه به نام User Space داریم که برنامهها و کاربران معمولی در آن اجرا میشوند. این فضا در حالت unprivileged قرار دارد، یعنی هیچ دسترسی مستقیمی به سختافزار یا منابع حساس سیستم ندارد.
به همین دلیل، وقتی برنامهای نیاز دارد کاری انجام دهد که به سختافزار یا منابع سیستمی مربوط است (مثل خواندن فایل، ارسال داده در شبکه یا تخصیص حافظه)، باید یک درخواست به کرنل بفرستد.
این درخواست شبیه به فراخوانی یک API است که توسط کرنل ارائه میشود.
به این نوع درخواستها در لینوکس System Call (syscall) گفته میشود.
ما یک لایه به نام User Space داریم که برنامهها و کاربران معمولی در آن اجرا میشوند. این فضا در حالت unprivileged قرار دارد، یعنی هیچ دسترسی مستقیمی به سختافزار یا منابع حساس سیستم ندارد.
به همین دلیل، وقتی برنامهای نیاز دارد کاری انجام دهد که به سختافزار یا منابع سیستمی مربوط است (مثل خواندن فایل، ارسال داده در شبکه یا تخصیص حافظه)، باید یک درخواست به کرنل بفرستد.
این درخواست شبیه به فراخوانی یک API است که توسط کرنل ارائه میشود.
به این نوع درخواستها در لینوکس System Call (syscall) گفته میشود.
Kernel Space
در واقع در لینوکس هم طراحی به سبک API وجود داره. ما یک لایه به نام User Space داریم که برنامهها و کاربران معمولی در آن اجرا میشوند. این فضا در حالت unprivileged قرار دارد، یعنی هیچ دسترسی مستقیمی به سختافزار یا منابع حساس سیستم ندارد. به همین دلیل، وقتی…
با دستور strace میتونید syscall های استفاده از دستور strace میتوانید تمام System Callهایی را که یک برنامه در زمان اجرا انجام میدهد، مشاهده کنید.
برای مثال، دستور زیر فراخوانیهای سیستمی مربوط به اجرای عبارت echo "hello" را نمایش میدهد:
گزینهی -c باعث میشود که در پایان، خلاصهای از تعداد و زمان مصرفشده در هر syscall نمایش داده شود، نه خروجی کامل و خطبهخط.
برای مثال، دستور زیر فراخوانیهای سیستمی مربوط به اجرای عبارت echo "hello" را نمایش میدهد:
strace -c echo "hello"
گزینهی -c باعث میشود که در پایان، خلاصهای از تعداد و زمان مصرفشده در هر syscall نمایش داده شود، نه خروجی کامل و خطبهخط.
Kernel Space
با دستور strace میتونید syscall های استفاده از دستور strace میتوانید تمام System Callهایی را که یک برنامه در زمان اجرا انجام میدهد، مشاهده کنید. برای مثال، دستور زیر فراخوانیهای سیستمی مربوط به اجرای عبارت echo "hello" را نمایش میدهد: strace -c echo "hello"…
خروجی این دستور
✦ ❯ strace -c echo "hello"
hello
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
0.00 0.000000 0 1 read
0.00 0.000000 0 1 write
0.00 0.000000 0 5 close
0.00 0.000000 0 4 fstat
0.00 0.000000 0 9 mmap
0.00 0.000000 0 3 mprotect
0.00 0.000000 0 1 munmap
0.00 0.000000 0 3 brk
0.00 0.000000 0 2 pread64
0.00 0.000000 0 1 1 access
0.00 0.000000 0 1 execve
0.00 0.000000 0 1 arch_prctl
0.00 0.000000 0 1 set_tid_address
0.00 0.000000 0 3 openat
0.00 0.000000 0 1 set_robust_list
0.00 0.000000 0 1 prlimit64
0.00 0.000000 0 1 getrandom
0.00 0.000000 0 1 rseq
------ ----------- ----------- --------- --------- ----------------
100.00 0.000000 0 40 1 total
✦ ❯ strace -c echo "hello"
hello
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
0.00 0.000000 0 1 read
0.00 0.000000 0 1 write
0.00 0.000000 0 5 close
0.00 0.000000 0 4 fstat
0.00 0.000000 0 9 mmap
0.00 0.000000 0 3 mprotect
0.00 0.000000 0 1 munmap
0.00 0.000000 0 3 brk
0.00 0.000000 0 2 pread64
0.00 0.000000 0 1 1 access
0.00 0.000000 0 1 execve
0.00 0.000000 0 1 arch_prctl
0.00 0.000000 0 1 set_tid_address
0.00 0.000000 0 3 openat
0.00 0.000000 0 1 set_robust_list
0.00 0.000000 0 1 prlimit64
0.00 0.000000 0 1 getrandom
0.00 0.000000 0 1 rseq
------ ----------- ----------- --------- --------- ----------------
100.00 0.000000 0 40 1 total
Kernel Space
خروجی این دستور ✦ ❯ strace -c echo "hello" hello % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 0.00 0.000000 0 1 read 0.00 0.000000 …
همین یه دستور ساده میتونه تا 111 درخواست به کرنل بفرسته 😂😂
Forwarded from TechTube 𝕏 تک توب
چند روز پیش یکی از دیتاسنترهای AWS، بزرگترین ارائه دهنده سرویسهای ابری در جهان، دچار اختلال شد و برای چندین ساعت صدها سرویس و وب سایت دچار مشکل شدن.
یکی از اونها سرویس Eight Sleep بود که لوازم جانبی هوشمند برای تخت خواب میسازه و از جمله اونها رویه تشک برای تنظیم خودکار دما و همچنین یک Base هست که زیر تشک قرار میگیره و امکان تنظیم زاویه تشک رو فراهم میکنه.
همه این دستگاه های چند هزار دلاری نیاز به اتصال به اینترنت و انلاین بودن برای کار کردن دارن و برخی قابلیتهای اونها نیازمند اشتراک ماهانه هستن و وقتی سرورهای اونها دچار اختلال شدن، به ناگهان خریداران اونها به دلیل گرمای بالای ناشی از این دستگاه ها و همچنین زاویه نامناسبی که این دستگاه تخت خواب رو تنظیم کرده، در نیمه شب بیدار شدن و خوابشون خراب شد که از جمله اونها مدیر عاملهای شرکتهای بزرگی همچون Vercel بودن!
علاوه بر این امکان تنظیم دستی این دستگاه ها هم به دلیل اختلال در سرورها ممکن نبود! در واکنش به این اتفاق، مدیرعامل Eight Sleep گفته این شرکت سریعا دستگاه هاش رو اپدیت میکنه تا حداقل در هنگام نبود اینترنت یا اختلال در سرورها، چنین مشکلات فجیعی رو به وجود نیاره!
🔎 arstechnica
📍 @TechTube
یکی از اونها سرویس Eight Sleep بود که لوازم جانبی هوشمند برای تخت خواب میسازه و از جمله اونها رویه تشک برای تنظیم خودکار دما و همچنین یک Base هست که زیر تشک قرار میگیره و امکان تنظیم زاویه تشک رو فراهم میکنه.
همه این دستگاه های چند هزار دلاری نیاز به اتصال به اینترنت و انلاین بودن برای کار کردن دارن و برخی قابلیتهای اونها نیازمند اشتراک ماهانه هستن و وقتی سرورهای اونها دچار اختلال شدن، به ناگهان خریداران اونها به دلیل گرمای بالای ناشی از این دستگاه ها و همچنین زاویه نامناسبی که این دستگاه تخت خواب رو تنظیم کرده، در نیمه شب بیدار شدن و خوابشون خراب شد که از جمله اونها مدیر عاملهای شرکتهای بزرگی همچون Vercel بودن!
علاوه بر این امکان تنظیم دستی این دستگاه ها هم به دلیل اختلال در سرورها ممکن نبود! در واکنش به این اتفاق، مدیرعامل Eight Sleep گفته این شرکت سریعا دستگاه هاش رو اپدیت میکنه تا حداقل در هنگام نبود اینترنت یا اختلال در سرورها، چنین مشکلات فجیعی رو به وجود نیاره!
🔎 arstechnica
📍 @TechTube
یه پروژه اموزشی و تمرینی و رایگان شروع کردم برای ساخت یه ابزار مانیتورینگ و فایروال شبکه برای لینوکس و سیستم های امبدد لینوکس این پروژه هیچ هدفی غیر آموزشی نداره
اگه کسی خواست توی این پروژه شرکت کنه و حضور داشته باشه بهم پیام بده
قواعد و ویژگی های این پروژه اموزشی:
1. استفاده از هرگونه هوش مصنوعی برای برنامهنویسی و تولید کد کاملاً ممنوع است. کل پروژه باید شخصاً نوشته شود و بدون هیچگونه تقلب باشد.
2. منابع یادگیری باید رایگان باشند و هیچ هزینهای برای منابع پرداخت نشود.
3. استفاده از کدهای دیگران ( جز مورد 1) مجاز است.
4. پروژه باید کاربرپسند بوده و تجربه خوبی برای کاربر فراهم کند.
5. زبانهای برنامهنویسی مورد استفاده: C، اسمبلی و Python.
6. پس از اتمام پروژه، باید ویدیو، ویکی یا مستند متنی برای آموزش و توضیح کدها ارائه شود.
7. تمام کدها باید کامنتگذاری مناسب و کامل داشته باشند.
8. منابع آموزشی پروژه باید پابلیک و قابل دسترس عمومی باشند.
9. تسکلیست و گزارش روند پیشرفت پروژه باید تهیه و بهروز شود.
اگه کسی خواست توی این پروژه شرکت کنه و حضور داشته باشه بهم پیام بده
قواعد و ویژگی های این پروژه اموزشی:
1. استفاده از هرگونه هوش مصنوعی برای برنامهنویسی و تولید کد کاملاً ممنوع است. کل پروژه باید شخصاً نوشته شود و بدون هیچگونه تقلب باشد.
2. منابع یادگیری باید رایگان باشند و هیچ هزینهای برای منابع پرداخت نشود.
3. استفاده از کدهای دیگران ( جز مورد 1) مجاز است.
4. پروژه باید کاربرپسند بوده و تجربه خوبی برای کاربر فراهم کند.
5. زبانهای برنامهنویسی مورد استفاده: C، اسمبلی و Python.
6. پس از اتمام پروژه، باید ویدیو، ویکی یا مستند متنی برای آموزش و توضیح کدها ارائه شود.
7. تمام کدها باید کامنتگذاری مناسب و کامل داشته باشند.
8. منابع آموزشی پروژه باید پابلیک و قابل دسترس عمومی باشند.
9. تسکلیست و گزارش روند پیشرفت پروژه باید تهیه و بهروز شود.
❤4
Kernel Space pinned «یه پروژه اموزشی و تمرینی و رایگان شروع کردم برای ساخت یه ابزار مانیتورینگ و فایروال شبکه برای لینوکس و سیستم های امبدد لینوکس این پروژه هیچ هدفی غیر آموزشی نداره اگه کسی خواست توی این پروژه شرکت کنه و حضور داشته باشه بهم پیام بده قواعد و ویژگی های…»