Abolfazl Profile Banner
Abolfazl Profile
Abolfazl

@_AbolfazlAbbasi

2,530
Followers
390
Following
246
Media
5,243
Statuses

Android engineer, Focusing on the Linux Kernel and Distributed Systems 🚀 #OccupyMars

Türkiye
Joined May 2018
Don't wanna be here? Send us removal request.
Pinned Tweet
@_AbolfazlAbbasi
Abolfazl
5 months
عید من اون روزیه که بتونم بفهمم توی این دیاگرام چه خبره و چه اتفاقایی میوفته:
Tweet media one
3
0
72
@_AbolfazlAbbasi
Abolfazl
3 months
خلاقیت ۱۰ از ۱۰ 😳😂
36
74
2K
@_AbolfazlAbbasi
Abolfazl
3 years
بله مهندس!
Tweet media one
65
20
915
@_AbolfazlAbbasi
Abolfazl
3 months
@Bn_peanut گفتم خیلی آشنا بودا این داستان...
Tweet media one
41
9
681
@_AbolfazlAbbasi
Abolfazl
2 months
اینم نتیجه:
Tweet media one
Tweet media two
@_AbolfazlAbbasi
Abolfazl
2 months
یه لپ‌تاپ قدیمی داشتم که ۲۰۱۵ گرفته بودم و برنامه نویسی رو باهاش جدی شروع کرده بودم یه مدت پیش بازش کردم بچسبونم رو تخته مخته یکم ادایی بشه بزنم به دیوار. نتیجه متعاقبا پست خواهد شد.
Tweet media one
Tweet media two
9
1
115
25
5
410
@_AbolfazlAbbasi
Abolfazl
3 months
جالب بود نمیدونستم که توی روترها اولویت بندی پکت هارو بخاطر پرفورمنس بیشتر سخت افزاری پیاده سازی میکنند، یعی گیت های منطقی تصمیم میگیرن کدوم پکت اولویت بالاتری داره تا روت بشه… اسم مدار Tiny Tera PPE تو یه کتاب گذرم بهش خورد گفتم اینجا هم بزارم.
Tweet media one
11
7
263
@_AbolfazlAbbasi
Abolfazl
2 months
@bobycloud نمیتونم به اون صحنه که دزد بهم داره حمله میکنه من بهش میگم "بابا واستا دنبال جعبه ابزارم" فکر نکنم 🤣😂
2
0
242
@_AbolfazlAbbasi
Abolfazl
4 months
از سری کتابهایی که از خریدنش پشیمون نشدم:
Tweet media one
7
8
231
@_AbolfazlAbbasi
Abolfazl
3 months
استارت اپ AI فقط این: یه استارتاپ به اسم Comma ai اومده یه محصول ساخته که فقط و فقط با دوتا دوربین میتونه ماشین رو خودش برونه. یعنی شما فکر کن یه سوناتا داری که فرمون برقی داره، اینو وصل میکنی به ماشینت و تمام!
18
8
198
@_AbolfazlAbbasi
Abolfazl
16 days
پدر محترم اینارو سال ۶۹ ساخته. pcb رو هم گویا با ماژیک کشیده
Tweet media one
Tweet media two
12
1
187
@_AbolfazlAbbasi
Abolfazl
6 months
چرا NGINX انقدر وحشتناک سریعه؟! بخش اول: Traffic Routing مدتی بود دنبال پروژه ای بودم که با هدف عمیق تر شدن توی مفاهیم شبکه و کانکارنسی بتونم با سی++ پیاده سازی کنم، هم فال بود و هم تماشا ./
7
5
175
@_AbolfazlAbbasi
Abolfazl
3 years
تو این رشتو میخوام در مورد سورس کد ارز #TON توضیح بدم، این پروژه حدود 1,800,000 خط کد داره که حدود %97 با ++C نوشته شده و الباقی C و Java،از عظمت پروژه نمیدونم باید از کجا شروع کنم به نگا کردن حدود دو میلیون خط کد! اول از همه با دایرکتوری ها شروع کنیم/ #رشتو
@_AbolfazlAbbasi
Abolfazl
3 years
با ارادت قلبی که به پروژه تلگرام دارم تصمیم گرفتم پروژه TON رو که یه ارز دیجیتاله و تلگرام پشتش بود( پنهانی الان هم هست) رو بررسی کنم و اینجا درموردش توییت بزنم! هدفم قطعا یادگیری و نگهداری کد ها توی سیستم های بزرگه!/ #رشته_توییت
2
2
24
7
15
166
@_AbolfazlAbbasi
Abolfazl
2 months
نظر نامحبوب: پایتون خیلی خوبه، خیلیی. ولی در همون حد اسکریپت و تولز نوشتن برای خدمت به سی/سی++. نه پروژه پروداکشن زدن، کصافط محض میشه اونجوری 😁
9
5
172
@_AbolfazlAbbasi
Abolfazl
3 years
امشب تصمیم گرفتم کتابی که یکبار خونده بودم رو تو ویرگول خلاصه اش رو بنویسم، منبع فارسی برای سیستم پروگرمینگ واقعا فکر کنم اصلا نداریم ولی قرار نیست این رشته پست‌ها هم منبع برای سیستم پروگرمینگ باشه ولی میتونه نقطه ی شروع خوبی برای اونایی که میخوان یه تستی بزنن باشه/
Tweet media one
7
21
166
@_AbolfazlAbbasi
Abolfazl
3 years
تو این رشته توییت میخوام در مورد NDK و برنامه نویسی به زبون ++C/C توی اندروید توضیح کلی بدم! اصلا چرا از کد های سی استفاده کنیم؟ این کدها کجای سیستم اجرا میشن؟ و چیکارا میشه باهاش کرد؟/
5
17
160
@_AbolfazlAbbasi
Abolfazl
4 months
من خیلی به داستان و تاریخچه‌ی نوآوری های بشر اهمیت میدم، مثلا چی شده که یه نفر اومده گفته خب NGINX رو بنویسم، یا ترانزیستور رو بسازم؟! مشکل اصلی چی بوده که خواسته با NGINX حلش کنه؟ چرا اصلا زبونی مثل Rust ساخته شده وقتی سی++ هست؟ این چرایی خیلی کمکم میکنه تا بهتر بفهمم و درک کنم.
9
3
159
@_AbolfazlAbbasi
Abolfazl
27 days
تاحالا براتون سوال شده که چرا دسترسی به cache داخل cpu سریعتر از RAM هست؟ صرفا برای خاطر اینکه داخل cpu هست و نزدیکتره؟ نه دلیل اصلیش مقداری حجم داده ای هست که cpu میاد و fetch میکنه، عملا از کش داخلیش میتونه در حد word بخونه ولی از ram باید بلاک بلاک بخونه. از دلایل دیگه ./
Tweet media one
4
7
150
@_AbolfazlAbbasi
Abolfazl
3 months
سرعتی که داکر به کارام میده باور نکردنیه، چیزایی که تا دیروز باهاشون سروکله میزدم و کلی وقت بابتش تلف میکردم رو الان یه ایمیج میسازم و خلاص منم توش حرفه ای نیستم ولی کارم رو راه میندازم و یادگرفتنش رو پیشنهاد میکنم. داکر: کوبر:
5
12
151
@_AbolfazlAbbasi
Abolfazl
2 months
یه لپ‌تاپ قدیمی داشتم که ۲۰۱۵ گرفته بودم و برنامه نویسی رو باهاش جدی شروع کرده بودم یه مدت پیش بازش کردم بچسبونم رو تخته مخته یکم ادایی بشه بزنم به دیوار. نتیجه متعاقبا پست خواهد شد.
Tweet media one
Tweet media two
9
1
115
@_AbolfazlAbbasi
Abolfazl
3 months
یه پسره با دوست دخترش تو استارباکس دارن با یه برد استارتر stm32 سی و میکرو یاد میگیرن، دلم میخواد براشون قهوه دونیت کنم بگم افرین که بوت کمپ فرانت اند ثبت نام نکردین 😂
6
0
110
@_AbolfazlAbbasi
Abolfazl
4 months
این مقاله در مورد ماشین های Time sharing برای اولین بار از بهترین دانشگاه مهندسی دنیا، یعنی MIT توی سال ۱۹۶۲ اومد بیرون و دنیا رو تغییر داد، بزودی خلاصه اش رو اینجا و کانالم میزارم.
Tweet media one
4
2
105
@_AbolfazlAbbasi
Abolfazl
20 days
گوگل اومده با فایربیس یه حرکت خفن زده و توی یه دیتاسنتر چند تا گوشی چیده که تیم هر پروژه میتونن برای یه تایم مشترکی بهش وصل بشن و ازش استفاده کنن. اسکرین رو هم میبینی، خیلی زیباست. همش به برکت adb که tcp رو ساپورت میکنه، همچین کاری رو برای تسترای خودمون کردیم ولی خب vpn لازم شد..
Tweet media one
3
4
103
@_AbolfazlAbbasi
Abolfazl
4 months
خیانتی که معلم های ریاضی مدرسه به من و امثال من کردن خیلی تاثیر بدی داشته توی زندگیمون، حتی بعضی از ماها تا اخر عمرمون با تنفر و ترس از ریاضی میمیریم.
12
4
101
@_AbolfazlAbbasi
Abolfazl
6 months
چرا NGINX انقدر وحشتناک سریعه؟! بخش دوم: Blocking I/O توی بخش قبلی فهمیدیم که NGINX ترافیک روتینگ رو توی لایه‌ی چهار و لایه‌ی هفت مدل OSI انجام میده و از مدل Reverse Proxy استفاده میکنه ./
@_AbolfazlAbbasi
Abolfazl
6 months
چرا NGINX انقدر وحشتناک سریعه؟! بخش اول: Traffic Routing مدتی بود دنبال پروژه ای بودم که با هدف عمیق تر شدن توی مفاهیم شبکه و کانکارنسی بتونم با سی++ پیاده سازی کنم، هم فال بود و هم تماشا ./
7
5
175
5
8
97
@_AbolfazlAbbasi
Abolfazl
2 months
چرا X شبکه‌ی محبوب منه؟ چون یه عالمه دوست خوب پیدا کردم، همین دو روز پیش یه کتاب خوب کشیدم بیرون ازش، چند ماه گذشته چند صد نفر فالوم کردن تا مسیری که در مورد لینوکس پیش میرم رو باهاشون به اشتراک بزارم و این بهم انگیزه میده. یکم باید زمانی که اینجا میگذرونم رومدیریت کنم، همین
3
0
95
@_AbolfazlAbbasi
Abolfazl
22 days
مموری منجمنت کرنل رو کنار داکیومنت و سورس با این کتاب میخونم، سال ۲۰۰۴ نوشته شده و شدیدا عمیق و فنیه، به اعماق MMU کرنل میبره و قشنگ همه چیز رو باز میکنه. اکثر ماکروهایی که توی کد نوشته منسوخ شده ولی مفهوم همونه و ارزش وقت گذاشتن رو داره.
Tweet media one
@_AbolfazlAbbasi
Abolfazl
24 days
وقت کنم بیام براتون از مموری منجمنت لینوکس میگم یکم عشق کنیم دورهم
2
0
44
1
3
98
@_AbolfazlAbbasi
Abolfazl
5 months
کانال یوتیوب بزنم کد پروژه هارو ریویو کنیم و ببینیم چی به چیه؟ مثل همین NGİNX و Kernel و … نمیخوام محدود به توییتر باشیم و فکر میکنم کامیونیتی فارسی نیاز داره به این چیزا
آره حتما
483
نه بیخیال
83
11
4
90
@_AbolfazlAbbasi
Abolfazl
5 months
دارم نتورک میخونم و تمایلم به Go و Rust بیشتر از قبل شده، ربط نتورک به اینا چیه؟ rust داره میاد تو کرنل، Go هم برای eBPF خیلی استفاده میشه. نتیجه؟ مشورت گرفتم و فعلا قرار شد توی C/C++ عمیق بشم، به حرف اقامون استراستروف هم گوش بدم و تکنیک یاد بگیرم نه زبون...
7
2
88
@_AbolfazlAbbasi
Abolfazl
4 months
شاید مهمترین چیزی که باید یاد گرفت توی سیستم پروگرمینگ پوینترها باشه، این ویدیو خیلی خوب و تمیز توضیح میده:
4
6
88
@_AbolfazlAbbasi
Abolfazl
3 years
این ویدیو رو کاوشگر خورشیدی پارکر ناسا فرستاده، میبینید که سرعتش 121 کلیومتر بر "ثانیه" است، پارکر اتمسفر خورشید رو تاچ کرد. بیشترین سرعتش هم 586,000~ کیلومتر بر ساعت بوده و عجیب‌تر از سرعتش، طراحی سپر حرارتی این کاوشگره!🚀
3
9
88
@_AbolfazlAbbasi
Abolfazl
4 months
کلیت ارتباط بین کرنل و کارت شبکه یا NIC امروز یه چیز جالبی در مورد کرنل خوندم و این بود که توی کرنل های قبل ۲.۶ هر بار که پکت جدیدی توسط کارت شبکه دریافت میشه، کارت شبکه (NIC) پکت داده رو روی مموری میزاره و وجود پکت رو با اینتراپت به کرنل خبر میده، کرنل با این اینتراپت متوجه ./
@_AbolfazlAbbasi
Abolfazl
4 months
یه چیز جالب در مورد کرنل خوندم امروز صبح برام خیلی خفنننننن بود، یکم دیگه اینجا و کانالم پستش میکنم
1
0
37
10
5
86
@_AbolfazlAbbasi
Abolfazl
5 months
از وقتی NGINX رو میخونم باید بگم C جذاب ترین زبون دنیاست، ساده و قدرتمند.
8
0
83
@_AbolfazlAbbasi
Abolfazl
5 months
هرکسی که میگه فلان زبون/فریمورک رو چطور یاد بگیرم میگم کد بقیه رو بخون یه زمان یجوری کلاینت تلگرام رو خورده بودم که براشون pull request باز میکردم، الان هم سر پروژه ی لودبالانسر دقیقا همون شرایطه، معماری، نحوه‌ی مدیریت کانکشن‌ها و ایونت‌ها بزرگترین چالشی هست که الان دارم ./
3
1
79
@_AbolfazlAbbasi
Abolfazl
1 month
همیشه این راه جواب میده، با یه زبون تازه اشنا شدین و میخوایین یادش بگیرین؟ پروژه بزنین میخوایین رزومه‌تون خوب بشه؟ پروژه بزنین کاراموز/جونیورین و میخوایین جاب بگیرید؟ پروژه بزنید
@shahriarshm
Shahriar Shariati
1 month
سه‌سال پیش تصمیم گرفتم وب‌فریم‌ورک خودمو از صفر بنویسم و تمام فرایندشو ضبط کنم. و خیلی اصرار داشتم کل وب‌فریم‌ورک در تنها یک ماژول پایتونی و با کمترین وابستگی جانبی باشه که نتیجش شد MinimalWeb که شبیه Flask. گیت‌هاب: پلی‌لیست یوتوب:
4
10
180
1
3
77
@_AbolfazlAbbasi
Abolfazl
3 months
فکر میکنم زمین بعدی برای بازی distributed systems باید باشه، خیلی جذابه حتی بیشتر از networking، اصلا شما وارد مبحث timing توی سیستم های توزیع شده که میشی میفهمی چقدر قشنگه این بازی.
5
1
73
@_AbolfazlAbbasi
Abolfazl
4 months
سورس خوندن چی بهم اضافه میکنه؟ - دست خط بقیه رو میبینم و روش های مختلف حل یه مسئله‌ی واحد رو بررسی میکنم - کلی چیز جدید یاد میگیرم از core زبونی که دارم باهاش کار میکنم - مهم تر از همشون برای معماری پروژه ها ایده میگیرم، انگار که با همین تیم کار کردم و باهاشون کد زدم
@_AbolfazlAbbasi
Abolfazl
4 months
استایل کد نویسی فیسبوک توی سی++‌رو میپسندم، کتابخونه های خوبی هم توسعه داده که خیلی چیزا میشه ازشون یاد گرفت، من الان دارم folly زیر و رو میکنم برای io_uring ببینم چی گیرم میاد
1
0
46
5
2
72
@_AbolfazlAbbasi
Abolfazl
4 months
جلوی خودتون رو با این حرفا نگیرید، چرا نباید اختراع کنیم؟! فکر کنید توروالدز هستین و قراره یه کرنل جدید بنویسید، به یونیکس و مینیکس نگاه میکنید و با خودتون میگین ای بابا چرا چرخ رو دوباره اختراع کنیم؟! خیر میشینید کرنل مینویسید! شما مگه الان روی ماشینتون چرخ چوبی نصبه؟!
Tweet media one
@lhjfx1
lhjfx
4 months
@_AbolfazlAbbasi علاقه به اختراع دوباره چرخ. در ایرانی جماعت که بسیار دیده ایم.
3
0
1
3
0
69
@_AbolfazlAbbasi
Abolfazl
4 months
فکر کن خوارزمی برای اینکه ریاضی و اعداد هندویی رو یاد بگیره چند بار پاشده رفته هند. یعنی سوار اسب بشی و خطر راهزن و کشته شدن تو مسیر و گرسنگی رو به جون بخری و پاشی بری هندوستان برگشتنی هم کتاب جبر و مقابله رو بنویسی!
3
2
70
@_AbolfazlAbbasi
Abolfazl
11 days
@_SphenoidBone چیزی که نظرم رو جلب کرد نبودن کار تیمی و فردگرایی بچه ها بود 😂 همه میخوان خودشون گل بزنن
1
0
69
@_AbolfazlAbbasi
Abolfazl
3 months
نودجی‌اس (NodeJs) از کتابخونه‌ی libuv برای هسته ی IO ی خودش استفاده میکنه،‌ این کتابخونه با سی نوشته شده و cross platform هست، ویژگی های event loop و non blocking I/O توی نتورکینگ نود هم از این کتابخونه میاد و برای یادگیری سی و نتورکینگ منبع جذابیه:
2
1
63
@_AbolfazlAbbasi
Abolfazl
3 years
آخه مهندس تیم رو ببین شما :))))))))
Tweet media one
@_AbolfazlAbbasi
Abolfazl
3 years
با ارادت قلبی که به پروژه تلگرام دارم تصمیم گرفتم پروژه TON رو که یه ارز دیجیتاله و تلگرام پشتش بود( پنهانی الان هم هست) رو بررسی کنم و اینجا درموردش توییت بزنم! هدفم قطعا یادگیری و نگهداری کد ها توی سیستم های بزرگه!/ #رشته_توییت
2
2
24
2
1
61
@_AbolfazlAbbasi
Abolfazl
3 months
بعد این فقط کرنل، نتورکینگ، distributed system و ریاضی. فعلا غیر این باشه عمر تباه کردنه 🤘
3
3
57
@_AbolfazlAbbasi
Abolfazl
3 months
@amunima خلاصه رشتو: برق رو قطع کنید بعد کار کنید.
3
0
57
@_AbolfazlAbbasi
Abolfazl
5 months
@sajadghorbaniii چه اتوبانایی 🥲
1
0
55
@_AbolfazlAbbasi
Abolfazl
2 years
از تجربه ام تو مسابقات ۲۰۲۱ تلگرام یه مشکلی بود که شما وقتی به پیامی ریپلای میزدی و اون پیام اصلی پاک میشد، توی دل پیام ریپلای شده اون پیامه رو میتونستین ببینید، این یکی از مشکلایی بود که باید حل میشد، حالا فکر کنید اگه توی گروه باشید یا حتی به اون پیام چند تا ریپلای بیاد چی؟./
1
1
54
@_AbolfazlAbbasi
Abolfazl
2 years
رفقا کسی کتابخونه‌ی ++C/C ای میشناسه که با پرتوبافر روی لینوکس RPC/IPC انجام بده؟
5
10
51
@_AbolfazlAbbasi
Abolfazl
3 years
امروز تلسکوپ فضایی جیمز وب پرتاب میشه و خیلی خوش شانس هستیم که توی امروز هستیم و میتونیم این روز هیجان انگیز رو ببینیم، امروز رو هیچوقت فراموش نمیکنیم.
Tweet media one
7
0
52
@_AbolfazlAbbasi
Abolfazl
6 months
توی این تصویر یه نمای کلی از ساختار NGINX رو برای وقتی که تعداد ورکر ها بروی ۳ ست شده میبینیم، تعداد ورکر ها توی رفتار NGINX هیچ تاثیری نداره و فقط قدرت پردازش اون رو بالا میبره و horizontal scaling میکنه ./
Tweet media one
@_AbolfazlAbbasi
Abolfazl
6 months
چرا NGINX انقدر سریعه؟! بخش سوم: Non Blocking I/O توی بخش قبلی فهمیدیم وقتی که یه سیستم کال برای باز کردن یک فایل انجام میشه چه اتفاقایی میوفته، و چه چیزهایی پتانسیل بلاک کردن پروسس برنامه رو دارند، توی این بخش میخوام در مورد مدل بعدی یعنی Nonblocking بنویسم ./
1
3
32
1
4
52
@_AbolfazlAbbasi
Abolfazl
3 months
یه کورس برای کرنل پروگرمینگ دیدم که نزدیک ۴ هزار دلاره! ارزش داره؟ نمیدونم ولی بنظرم یکی واقعا پیگیر باشه بشینه با chatGPT سرفصلایی که دوره گفته رو بده میتونه ریسورسای خوبی ازش دربیاره و بخونه، قطعا به راحتی شرکت کردن توی دوره نیست ولی دنیای شیرینی داره
7
0
51
@_AbolfazlAbbasi
Abolfazl
3 years
#متاورس الان شده مثل #IoT دو سه سال پیش، هر کی یه برد با آردینو میساخت و با اپ موبایل یه رله رو قطع و وصل میکرد میگفت من Iot کارم.
3
5
50
@_AbolfazlAbbasi
Abolfazl
2 months
سادگی کد فقط وقتی که بدونی کرنل چطور یه پروسس جدید میسازه.
1
0
51
@_AbolfazlAbbasi
Abolfazl
2 months
@VForMhrlife چرا اون اپشن ماسک هنوز هست؟ با باطری ماشین میتونی تو مواقع اضطراری در رو باز کنی.
1
0
50
@_AbolfazlAbbasi
Abolfazl
2 months
خب، کرنل چطور میدونه توی این لحظه کدوم پروسس روی یک هسته‌ی cpu در حال اجراست؟ کرنل تسک(پروسس)هایی که در حال اجرا هستن رو توی یک Linked List به صورت double به اسم task list نگهداری میکنه، ساختمون داده ای که این linked list نگهداری میکنه task_struct هست که نسبتا بزرگه و تمامی ./
2
0
51
@_AbolfazlAbbasi
Abolfazl
3 months
@pykello_fa عه با Erik Demaine درس الگوریتم داشتم توی MIT خیلی باحال توضیح میداد. مثلا اینجا میگفت یه درخت رو چطور تبدیل کنیم به یه ارایه، بعد میاد میگه هر چی گفتم رو فقط توی ذهنتون نگه دارین قرار نیست واقعا درخت رو تبدیل به ارایه کنیم! بعد دورش ابر کشید ینی تو خیالتون باشه...
2
0
50
@_AbolfazlAbbasi
Abolfazl
5 months
اینجا من نوشتن بلاکینگ بروی I/O سوکت TCP رو مثال میزنم و سیستم کال ()write رو توضیح میدم. میبینیم که برای هر سوکتی که از کرنل درخواست باز کردن میکنیم کرنل یک بافر نوشتن و یک بافر خوندن به اون اختصاص میده،‌ و وقتی روی یک سوکت میخواییم write انجام بدیم کرنل تا زمانی که ./
Tweet media one
@_AbolfazlAbbasi
Abolfazl
6 months
چرا NGINX انقدر وحشتناک سریعه؟! بخش دوم: Blocking I/O توی بخش قبلی فهمیدیم که NGINX ترافیک روتینگ رو توی لایه‌ی چهار و لایه‌ی هفت مدل OSI انجام میده و از مدل Reverse Proxy استفاده میکنه ./
5
8
97
1
2
47
@_AbolfazlAbbasi
Abolfazl
3 years
انقدر که ادای خفن هارو در میارین و حرف میزنین، بابا دیگه از ایشون خفن تر نمیخوایین بشین که یاد بگیرین ازش!
Tweet media one
2
0
49
@_AbolfazlAbbasi
Abolfazl
3 years
میخوام دلتون رو ببرم به لحظات باشکوه پرتاب و فرود موشک فالکون ۹ اسپیس ایکس، عجب علمی پشت این لحظات نشسته...
1
1
46
@_AbolfazlAbbasi
Abolfazl
4 months
استایل کد نویسی فیسبوک توی سی++‌رو میپسندم، کتابخونه های خوبی هم توسعه داده که خیلی چیزا میشه ازشون یاد گرفت، من الان دارم folly زیر و رو میکنم برای io_uring ببینم چی گیرم میاد
1
0
46
@_AbolfazlAbbasi
Abolfazl
12 days
من تا همین دیشب نمیدونستم تبدیل virtual address به physical address سخت‌افزاری پیاده سازی میشه :\ تازه فهمیدم که MMU یه سخت‌افزاره... دلیل؟ قطعا کندی نرم‌افزار، بعد امنیت و موازی اجرا شدن...
4
0
47
@_AbolfazlAbbasi
Abolfazl
4 months
کد این پروژه‌های بزرگ رو که میبینم پرام میریزه و با خودم میگم کی اینارو نوشته؟! بعد وصل میکنم به این سازه ها و میگم ما همون آدماییم که اینجا رو تو دل کوه ۳۰۰۰ سال پیش ساختیم…
Tweet media one
2
0
46
@_AbolfazlAbbasi
Abolfazl
1 month
یادتون نره که اینا متد های مهمه و کرنل خیلی وسیعتر از این عکسه، مثلا این فقط عکس فرایندی هست که یک پکت توی ipv4 طی میکنه اونم بدون فرگمنتیشن (بر اساس سورس سال ۲۰۰۷)
Tweet media one
@Mehrdadlinux
MehrdadLinux
1 month
یک نقشه تعاملی عااالی از کرنل #لینوکس Linux kernel خدایش زحمت کشیده 😍 یک مرجع عالی ، چرا من اینقدر برای این چیزا ��وق میکنم 😁
Tweet media one
4
15
176
0
0
47
@_AbolfazlAbbasi
Abolfazl
20 days
ا��ه گفتین این ماکرو do و while با 0 نقشش چیه؟! از سورس مموری منجمنت کرنل
Tweet media one
6
0
46
@_AbolfazlAbbasi
Abolfazl
1 month
دلم میخواد هرچی در مورد شبکه و کرنل هست رو مستقیم با کابل شبکه بریزم تو مغزم! من تحمل اینقدر هیجان وقت خوندن رو ندارم.
0
0
44
@_AbolfazlAbbasi
Abolfazl
24 days
وقت کنم بیام براتون از مموری منجمنت لینوکس میگم یکم عشق کنیم دورهم
2
0
44
@_AbolfazlAbbasi
Abolfazl
15 days
کرنل با اینکه پیچیده اس ولی خیلی تمیزه کدش، جدای از ماکروها بقیش خیلی قابل فهمه، دمشون گرم واقعا
3
0
45
@_AbolfazlAbbasi
Abolfazl
1 month
دیشب خواب پاول دروف رو میدیدم، بهش گفتم داداچ من سورس کلاینت اندروید رو خوب میدونم، شروع کرد ازم سوال پرسید گفت controller ها چی هستن توی تلگرام؟ گفتم کلای کنترلر کلای سینگلتونی هستن که به ازای هر اکانت ساخته میشه و حدودا بیزینس برنامه اونجا پیاده سازی شده. بعد گفتم tgnet رو هم./
5
0
45
@_AbolfazlAbbasi
Abolfazl
3 years
میخوام کتاب The Linux Programming Interface از Michael Kerrisk رو با هم پیش بریم، خوده کتاب نمونه کد هارو با زبون C نوشته ولی اگه به نمونه کد نیازی باشه من با ++C میخوام پیش برم. هر فصل رو توی یه پست ویرگول مینویسم و کنارش توضیحات اضافی هم اگه نیازی بود میدم.
3
0
44
@_AbolfazlAbbasi
Abolfazl
1 month
اکثرا وقتی به کرنل یا ساختار و لایه‌های شبکه نگاه میکنیم فکر میکنیم که همه‌ی اینا یک شبه نوشته شدن، ولی همین استک شبکه طی سالها دیباگینگ و نیاز کاربر طراحی و پیاده سازی شدن.
Tweet media one
0
0
43
@_AbolfazlAbbasi
Abolfazl
3 years
ما با JNI میتونیم یه اینترفیس بین جاوا و سی‌پلاس‌پلاس داشته باشیم. میتونیم ایجکت بسازیم، متد کال کنم توی زمان اجرا ارایه ها و اکسپشن هارو مدیریت کنیم و از JVM ابجکت هارو مدیریت کنیم! امیدوارم وقت کنم و یه برنامه چت با کاتلین ++C بنویسم.
1
0
44
@_AbolfazlAbbasi
Abolfazl
1 month
لیست اونایی که جایزه‌ی تورینگ(نوبل کامپیوتر) گرفتن رو ببینید و به این توجه کنید که پشت این جایزه ساعت ها کار بی وقفه تا اخر شب چه توی افیس و چه توی خونه وجود داره. دانشمندا و مهندسایی که اکثرا بینمون نیستن ولی کارهاشون بی‌وقفه داره استفاده میشه...
1
1
43
@_AbolfazlAbbasi
Abolfazl
13 days
دوستان برای اینکه تو ایران رزبری پای با Ubuntu core رو به اینترنت ازاد وصل کنیم ایده ای دارید؟ نمیتونیم از snap store چیزی دانلود کنیم پس طبیعتا vpn هم نمیتونیم دانلود و نصب کنیم من راهی که به ذهنم زد این بود که یه وی‌پی‌ان روی یه مودم نصب کنم و رزبری رو به اون وصل کنم
13
0
44
@_AbolfazlAbbasi
Abolfazl
1 month
آقا دیشبم خواب لینوس توروالدز رو میدیدم 😐 داشتیم باهم کتابای ملت رو امضا میکردیم. ازش پرسیدم کرنل رو چطور بخونم؟! دارم از رو این کتابا میخونم و فلان. گفت لازم نیست همشو بخونی وقتتو میگیره، مفاهیم پایه رو بخون برو مرحله‌ی بعد هدفت! سوالی داشتین بگین شبای بعد ازش میپرسم 😬
@_AbolfazlAbbasi
Abolfazl
1 month
دیشب خواب پاول دروف رو میدیدم، بهش گفتم داداچ من سورس کلاینت اندروید رو خوب میدونم، شروع کرد ازم سوال پرسید گفت controller ها چی هستن توی تلگرام؟ گفتم کلای کنترلر کلای سینگلتونی هستن که به ازای هر اکانت ساخته میشه و حدودا بیزینس برنامه اونجا پیاده سازی شده. بعد گفتم tgnet رو هم./
5
0
45
2
0
41
@_AbolfazlAbbasi
Abolfazl
2 years
دلیل رفتن جاذبه ی خارج نیست، نه! علت دافعه‌ی داخله...
0
1
42
@_AbolfazlAbbasi
Abolfazl
5 months
کرنل رو که میخونی میبینی یه مشت پوینتر چقدر قشنگ مثل ساعت دارن کار میکنن
2
1
41
@_AbolfazlAbbasi
Abolfazl
3 years
نزدیک چند روزه دارم یه پست آماده میکنم برای نقشه ی راه سیستم و امبدد لینوکس پروگرمینگ، کلا چطور میتونیم یه سیستم دولوپر بشیم و فرقی نمیکنه وارد چه صنعتی میشیم، رباتیک، خودروسازی، کشتی سازی یا... امیدوارم به درد اونایی که پیگیر این مسیرن بخوره، آخراشه و اینجا هم میزارمش.
2
3
40
@_AbolfazlAbbasi
Abolfazl
4 months
ببینید دوستان فکر نکنید که لینوس توروالدز برای نوشتن لینوکس بهش وحی شده و اون رو نوشته، قبل اون مینکس نوشته شده بود، و قبل مینکس هم یونیکس نوشته شده بود، فکر نکنید که لینوس توروالدز تمامی اینارو خودش از صفر نوشته و پایه گذاری کرده، هر چند اینا چیزی از مقام آقامون کم نمیکنه✌️
@_AbolfazlAbbasi
Abolfazl
4 months
کل مموری این ماشین 32,768 واژه (words) بوده که هر واژه میشه ۳۶ بیت، حالا حدود 5000 واژه برای اون supervisor user بود که گفتم، بقیه ی 27,000 تا برای 3 تا یوزر دیگه، دقیقا مثل کرنل های مدرن اون محیط حافظه ی 5,000 واژه ای محافظت میشده تا مطمئن بشیم بخش‌های کلیدی همیشه قابل دسترسیه.
0
0
18
3
2
40
@_AbolfazlAbbasi
Abolfazl
2 months
یادتونه گفته بودم یادگرفتن سی/سی++ فقط یاد گرفتن زبون نیست؟! توش سیستم‌عامل و کانسپت های دیگه هم هست؟ حالا به اون لیسته پایتون رو هم اضافه کنین، دلم نمیخواد ولی مجبورم مجبور...
2
0
38
@_AbolfazlAbbasi
Abolfazl
2 months
این اماده ها خیلی شلوغ بودن و در نهایت با این کانفیگ کارم راه افتاد: دیگه تمرکز روی کد، بریم سر وقت پروژه‌ی Vortex
Tweet media one
@_AbolfazlAbbasi
Abolfazl
2 months
Nvim رو درست کانفیگ کنم 😐
Tweet media one
7
0
37
3
1
39
@_AbolfazlAbbasi
Abolfazl
3 months
انقدر توی بحث مموری رفتیم پایین که ادرسی که برای بقیه ی برنامه ها که با & بهش میرسن و براشون سطح پایین حساب میشه برای ما سطح بالا محسوب میشه. یعنی بین virtual memory و physical memory 😂
4
0
38
@_AbolfazlAbbasi
Abolfazl
2 months
آخرش اومدم و nvim رو نصب کردم و چند ساعتیه دارم کانفیگش میکنم، خیلییی خفنه، کد کرنل رو باز کردم انقدر سبکه که انگار قبل این ول معطل بودم اگه بتونم خوب یادش بگیرم و باهاش راحت باشم میرم اشتراک Clion رو کنسل میکنم. این ویدیو برای شروع: مرسی از @eghbal_ryn
7
0
38
@_AbolfazlAbbasi
Abolfazl
4 months
سورس بیتکوین با سی++ رو دانلود کردم، بریم که داشته باشیم یادگرفتن چیزای جدید رو 🤘
4
0
38
@_AbolfazlAbbasi
Abolfazl
10 days
سخت ترین ساب سیستم کرنل تا ابد مموریه دوستان مموری. روی کاغذ خیلی قشنگه ولی توی کد پیچیده و زیبا...
3
1
45
@_AbolfazlAbbasi
Abolfazl
1 month
میدونستین که اترنت اول روی کابل کواکسیال پیاده سازی شد؟
5
0
39
@_AbolfazlAbbasi
Abolfazl
4 months
ساختار بیت کوین قدیمی ترین ساختاریه توسط کرنل ارائه شده، بعدش Nginx و gRPC که دوتاشونم دارن از ePoll استفاده میکنند، مدرن و اخرین هم IO Uring هست که من دارم استفاده میکنم که بهینه تر و جالبتره، امشب احتمالا یه بخش از ماژول ایونت تموم بشه با io uring و پوش کنم رو گیت
@_AbolfazlAbbasi
Abolfazl
4 months
دارم ماژول پروژه های NGINX ,Dragon, gRPC, Bitcoin رو میارم روی کاغذ تا تصمیم بگیرم کدوم رو برای Vortex انتخاب کنم، این ماژول ایونت فریمورک Dragon با سی++ هست که داره از ePoll استفاده میکنه:
Tweet media one
1
0
28
1
0
38
@_AbolfazlAbbasi
Abolfazl
1 month
این پروکسی Envoy میاد هم از libevent و liburing و event_fd به صورت همزمان استفاده میکنه، یکم باهاش سر و کله زدم سر در نیاروم دلیل کارشون رو، بازم بگردم ببینم چی میشه
Tweet media one
1
0
38
@_AbolfazlAbbasi
Abolfazl
3 years
برای بیلد کردن و کامپایل کردن پروژه از CMake استفاده میشه و ساختار پروژه به صورت ماژولاره و هر ماژول برای خودش به صورت مستقل فایل CMake داره، و در نهایت به یک فایل لینک شده! یعنی شما میتونی هر دایرکتوری رو به صورت مستقل دولوپ و تست کنی، پروژه به طور عجیبی تست کد داره و/
1
0
36
@_AbolfazlAbbasi
Abolfazl
3 years
و این تست کد ها به صورت منظم توسعه داده میشه، ساختار فایل ها هم این شکلیه: -Root -Root CMake file --Module A --Module A CMake file --Module B --Module B CMake file ... واقعا برام سواله این حجم کد رو چجوری مدیریت میکنن و اصلا از کجا شروع میشه؟ شاید بعدا فهمیدیم!/
1
0
37
@_AbolfazlAbbasi
Abolfazl
2 months
کرنل میاد اطلاعات پروسس های فعال رو توی یه Linked List با اسم task list نگه‌میداره و بخش جالبش پیدا کردن پروسس فعال فعلی با هزینه‌ی کمتر از O(n) هست که امروز در موردش تو کانالم و اینجا مینویسم.
1
1
37
@_AbolfazlAbbasi
Abolfazl
2 years
جرأت کنید راست و حقیقی باشید. جرأت کنید زشت باشید! اگر موسیقی بد را دوست دارید رک و راست بگویید. خود را همان که هستید نشان بدهید. این بزک تهوع انگیز دوروئی و دو پهلویی را از چهره روح خود بزدایید، با آب فراوان بشوئید... رومن رولان
2
1
35
@_AbolfazlAbbasi
Abolfazl
4 months
یه چیز جالب در مورد کرنل خوندم امروز صبح برام خیلی خفنننننن بود، یکم دیگه اینجا و کانالم پستش میکنم
1
0
37
@_AbolfazlAbbasi
Abolfazl
2 months
Nvim رو درست کانفیگ کنم 😐
Tweet media one
7
0
37
@_AbolfazlAbbasi
Abolfazl
5 months
یادتونه گفتم NGINX از کانتکس سویچینگ جلوگیری میکنه؟ توی این عکس میبینیم که وب سرور های سنتی که از پترن tread per connection استفاده میکنند چطور وقت CPU و خود کرنل رو میگیرن تا کانتکس سویچینگ انجام بده، ولی NGINX روی یک پروسس داره کار میکنه.
Tweet media one
@_AbolfazlAbbasi
Abolfazl
6 months
نگهداری ترد ها برای سیستم‌عامل هزینه ی بالایی دارن، اولین هزینه ای که اینجا من بهشون اشاره میکنم انجام contex switching روی ترد ها توسط CPU هست، contex switching زمانی اتفاق میوفته که سیستم‌عامل cpu رو از یک ترد بگیره و به ترد دیگه ای بده ./
2
0
6
1
0
37
@_AbolfazlAbbasi
Abolfazl
2 months
تاحالا قشنگتر از distributed system ندیدم، روی ۱۶ تا نود htop رو باز میکنم و اسکریپت رو ران میکنم و مستر میاد بالا و ورکر ها کار میکنن و به ترتیب cpu usage شون میره بالا و من عشق میکنم.
2
0
35
@_AbolfazlAbbasi
Abolfazl
3 years
سیستم عامل اندروید روی یه نسخه ای از کرنل لینوکس ران میشه و پایین تر از همه ی لایه ها قرار میگیره! برنامه هایی که توی اندروید نوشته میشه اکثرا به زبون های نیتو هست و با جاوا/کاتلین توسعه داده میشه! بعد از اینکه این کد ها نوشته شد به بایت کد تبدیل میشه و در نهایت روی JVM/
2
0
37
@_AbolfazlAbbasi
Abolfazl
4 months
نزدیک دوساله دارم فقط روی این مورد توی شرکت کار میکنم، به دلایلی مجبور شدم WorkManager خودمون رو بنویسم، و بیشترین رکوردی که از لاگ ها داریم ۱۸۲ ساعت لایو موندن توی بکگرانده، بعد از کارایی که کردم کمبود مصرف باطری بیشتر به چشم میومد که از ۵۲ درصد به تنها ۲ درصد کاهش پیدا کرده بود
@SamadiPour
Nobody
4 months
عزیزان iOS کار چه روشی وجود داره که یه Task طولانی تو بک‌گراند داشته باشیم؟ من نیاز دارم که تو بک‌گراند پشت سر هم دیتای ۳ تا سنسور اصلی رو بگیرم و بریزم تو دیتابیس. تو اندروید میدونم راه ساده وجود داره ولی iOS همه اش به نظر بن بسته. فرض کنید قراره ۲۴ ساعته بدون توقف کار کنه.
17
8
73
5
0
37
@_AbolfazlAbbasi
Abolfazl
5 months
کتاب خوب میخوایید؟ بفرمایید کمی TCP:
@h313n_0f_t0r
Helen (of Tor)
5 months
my first infosec boss made me buy and read these and it truly was *the move* to help me understand a lot moving forward in the field.
Tweet media one
100
292
4K
0
0
36
@_AbolfazlAbbasi
Abolfazl
1 month
از این سایت geeks for geeks متنفرم واقعا چیه این اشغال یکم ui/ux نداره
9
0
35
@_AbolfazlAbbasi
Abolfazl
2 years
هی منتظر کلاس میمونم و هی یادم میوفته استاد نیست... #آرین_اقبال #جادی #مهسا_امینی #MahsaAmini
Tweet media one
2
0
33
@_AbolfazlAbbasi
Abolfazl
3 years
حالا مگه زبون نرم افزار ما جاوا نیست پس چطور بین این لایه با لایه نیتیو ارتباط برقرار میشه و داده جا به جا میشه! بله اینجا جاوا خودش رو نشون میده و بهمون JNI یا Java Native Interface رو پیشنهاد میکنه/
1
0
35
@_AbolfazlAbbasi
Abolfazl
3 months
فکر کنید که یه کلاینت http دارید که سایز بافرش رو روی ۱ بایت تنظیم کردین و رکویستی که به سرور میفرستین ۱۰ کیلوبایته، میتونین بگین بعد از اینکه رکویست رو میفرستیم سرور جواب میده یا نه؟ چه اتفاقی میوفته؟
5
0
35