PDA

View Full Version : درایور نویسی



lousee_18
پنج شنبه 19 آذر 1388, 23:08 عصر
سلام خدمت دوستان
برای درایور نویسی از کجا باید شروع کنم ؟ میخوام برای دوربین مدار بسته درایور بنویسم .

متشکرم

xxxxx_xxxxx
جمعه 20 آذر 1388, 01:50 صبح
سلام،
زبانی که برای این کار انتخاب کردید اصلاً مناسب نیست. برید سراغ زبانهای خانواده C

REZADG
جمعه 20 آذر 1388, 07:19 صبح
ایکس ایکس جون توی راز موفقیت میگه هیچ کاری غیر ممکن نیست حتی اگر همه رای منفی بهش بدن دوست عزیز همه یه عقیده ای دارن ایکس ایکس ما این گونه نظر داره منم میگم با وی بی شش میشه ویندوز هم نوشت

Felony
جمعه 20 آذر 1388, 10:11 صبح
ایکس ایکس جون توی راز موفقیت میگه هیچ کاری غیر ممکن نیست حتی اگر همه رای منفی بهش بدن دوست عزیز همه یه عقیده ای دارن ایکس ایکس ما این گونه نظر داره منم میگم با وی بی شش میشه ویندوز هم نوشت

:متعجب:دوست عزیز شما چقدر از VB اطلاع دارید ؟
این فکر نوشتن ویندوز و درایور با VB رو از کلت بیرون کن ، اگر میشد تا به حال نوشته بودن ، VB کاملا به سیستم عامل وابسته هستش و برای اجرا شدن یه برنامه نوشته شده با VB نیاز به کتابخانه اشتراکی VB هست ، و حتی نمیتونه dll های واقعی بسازه ، اون وقت شما میگی باهاش میشه سیستم عامل یا درایور نوشت ؟ ( البته شاید منظورتون یک shell بوده ! )

REZADG
جمعه 20 آذر 1388, 13:46 عصر
عزیز من منظور همون درایو و ویندوز بود نه شل چرا میگم میشه واسه هزارو یک دلیل اولیش و ساده ترین نمونش مگه سی پلاس پلاس به ران تایم احتیاج نداره چرا داره چند تا میخوایی واست بریزم اینجا نمونه ی سادش ویندوز بوت سی دی هست مگه توس سی دی سرچ میکنی دی ال ال وجود نداره خوب داره منم میتونم برنامه ای که با وی بی نوشتم بوت سی دی کنم بدون نیاز به ویندوزم بازش کنم

REZADG
جمعه 20 آذر 1388, 13:47 عصر
شرمنده یادم رفت تنها دلیلی که نمیزاره برنامه نویسان از این زبان به عنوان یک زبان برای درایو نویسی و یا سیستم عامل نویسی استفاده کنند اینه که کمی کنده همین

Felony
جمعه 20 آذر 1388, 13:57 عصر
عزیز من منظور همون درایو و ویندوز بود نه شل چرا میگم میشه واسه هزارو یک دلیل اولیش و ساده ترین نمونش مگه سی پلاس پلاس به ران تایم احتیاج نداره چرا داره چند تا میخوایی واست بریزم اینجا نمونه ی سادش ویندوز بوت سی دی هست مگه توس سی دی سرچ میکنی دی ال ال وجود نداره خوب داره منم میتونم برنامه ای که با وی بی نوشتم بوت سی دی کنم بدون نیاز به ویندوزم بازش کنم

نه ++C به dll و فایل ... احتیاج نداره ، چون میتونی توش درایور بنویسی اون ++ Visual C هست که به dll احتیاج داره ( اونم در حالت عادی مثل دلفی به هیچ چیز نیاز نداره ) ، تو CD ویندوز dll وجود داره ولی اون ها کتابخانه هایی هستند که خود ویندوز بعد از نصب کرنل ازشون استفاده میکنه .

دوست عزیز اصلا میدونی فایل exe فقط برای سیستم عامل ویندوز هست و در سیستم عامل های دیگه یک فایل ناشناخته هست ؟ اون وقت شما چه طور میخوای یک فایل exe خروجی گرفته شده از VB رو که خودش به ویندوز وابستس به عنوان سیستم عامل بارگزاری کنی خدا میدونه !

تا زمانی که سیستم عامل ویندوز نصب نباشه فایل exe معنایی نداره !

REZADG
جمعه 20 آذر 1388, 20:28 عصر
تا حالا اسم pe_bolder به گوشتون خورده این برنماه چه برنامه های سی و چه برنماه های وی بی ور میگیره و روی سی دی رایت میکنه و با راهندازی سیستم از روی سیدی برنامه اجرا میشه خوب این چطوری ممکنه پس هر چیزی یه راه حلی داره در مورد سی پلاس پلاس میخوایی ران تایم بزارم تا باور کنی برنامه هاش به ران تایم احتیاج دارن و در مورد ویندوز هم باید بگم من دی ال ال های خود ویندوز رو نگفتم دی ال ال های خود ویندوز در سی دیش کدک هستن مثل shell32.dll که در سی دی با این نام پیداش میکنی shell32.dl_ درسته ولی اگر یکم بگردی میبینی فایل هایی هستن که به صورت *.dllهستن و اگر اونارو برداری از رو سی دی سی دی دیگه بوت نمیشه
اگر ممکنه این مورد آخری رو واسه من تفصیر کنید تا ببینم چطوری ممکنه و چرا این کار میشه ؟

Felony
جمعه 20 آذر 1388, 21:18 عصر
تا حالا اسم pe_bolder به گوشتون خورده این برنماه چه برنامه های سی و چه برنماه های وی بی ور میگیره و روی سی دی رایت میکنه و با راهندازی سیستم از روی سیدی برنامه اجرا میشه خوب این چطوری ممکنه پس هر چیزی یه راه حلی داره
بله ، ولی فکر کردید این برنامه چی کار میکنه ؟ این هم درایور های ویندوز رو کپی میکنه ، پس در هرصورت کل سیستم عامل در اختیار شما نیست و مدیریت حافظه و ... بر عهده ی همین ویندوز خودمون هست نه برنامه ی شما ، چون برنامتون در هر صورت داره تحت هسته ی ویندوز بارگزاری میشه !


در مورد سی پلاس پلاس میخوایی ران تایم بزارم تا باور کنی برنامه هاش به ران تایم احتیاج دارن
مثل اینکه شما میخوای الکی بحث رو کش بدی ! ، بابا ++C وقتی به طور معمول باهاش برنامه بنویسی خوب خروجیش exe هست و معلومه وابسته به سیستم عامل میشه ، گفتم قابلیت درایور نویسی رو داره و اگر بخوای میتونی اول یک درایور برای یک فایل مورد نظر بنویسی و بعدا اون فایل توسط درایور شناسایی بشه و به BootLoader معرفی بشه .


در مورد ویندوز هم باید بگم من دی ال ال های خود ویندوز رو نگفتم دی ال ال های خود ویندوز در سی دیش کدک هستن مثل shell32.dll که در سی دی با این نام پیداش میکنی shell32.dl_ درسته ولی اگر یکم بگردی میبینی فایل هایی هستن که به صورت *.dllهستن و اگر اونارو برداری از رو سی دی سی دی دیگه بوت نمیشه
بابا اون dll ها خودشون یک نوع درایور هستن ، فکر نکن یه dll معمولی هستن که هر برنامه ای بیاد از توابع داخلشون استفاده کنه ، فقط خود فایل های راه انداز ویندوز و Setup ویندوز میتونه ازش استفاده کنه ، خوب وقتی حذف بشه ویندوز نمیتونه درایورها رو برای نصب بارگزاری کنه .


از همون مورد اولی که گفتید در مورد pe_Builder معلومه درک درستی از سیستم عامل ندارید ، منظور شما از سیستم عامل این هست که بشه 2 تا فایل رو کپی و یه فیلم پخش و ... انجام داد ، در صورتی که سیستم عامل یعنی : مدیریت منابع ، مدیریت حافظه ، مدیریت پردازش ها ، اختصاص منابع که با pe_builder همه ی اینها دوباره به دست کرنل ویندوز سپرده میشه !

mpmsoft
شنبه 21 آذر 1388, 02:33 صبح
تنها دلیلی که نمیزاره برنامه نویسان از این زبان به عنوان یک زبان برای درایو نویسی و یا سیستم عامل نویسی استفاده کنند اینه که کمی کنده همین

می شه بگید به چه شکل می شه با ویبی فایلهای .sys جهت درایور نویسی نوشت ؟
می شه بگید به چه شکل می شه نرم افزار های کنسولی با ویبی نوشت ؟
آیا امکان دسترسی مستقیم به حافظه و زبان اسمبلی در ویبی فراهم هست ؟
آیا می دانید دلیل این کندی چی هست ؟

اینها و خیلی سوالهای دیگر در ویبی پاسخی ندارند

این سبک نرم افزار ها که مستقل از پلتفرم کار می کنند می بایست با زبانهای پایه طراحی شوند نه ویبی 6

xxxxx_xxxxx
یک شنبه 22 آذر 1388, 00:55 صبح
سلام دوستان
لطفاً بحث رو منحرف نکنید، درایور نویسی با VB هیچ ارتباطی با 32 بیتی یا 64 بیتی بودن ویندوز نداره. اگر داره بگید چی هست!

دوست عزیز، اینکه راز موفقیت چی میگه رو من و شما هم اگر درک کنیم، کامپیوتر براش قابل درک نیست. منطقی بحث کنید. وقتی پشت کامپیوتر نشستید فقط منطق هست که باهاش در ارتباطی و نه هیچ چیز دیگر. پس منطقی بحث کنید. هر ابزاری برای انجام کاری فراهم شده. فلسفه وجودی VB چیز دیگری ست که با اون چیزی که در ذهن دارید فاصله زیادی داره. کار ساده ای که قرار بود با زبان C انجام بشه رو Basic ساده تر و مفهوم ترش کرد، هزینه بدست آوردن این سادگی، از دست دادن خیلی امکانات و قابلیت های دیگه هست. من جمله اشاره گرها. در خاندان بیسیک، از GWBasic بگیرید تا همین VB6 فقدان اشاره گرها به خوبی احساس میشد. اشاره گرها یکی از ملزومات برنامه نویسی سیستمی هست. نوشتن یک برنامه در Ring0 رو چطور میخواید با VB انجام بدید وقتی که ابزارش رو در اختیار ندارید؟ وقتی شما نتونید با VB6 به خانه های حافظه حتی دسترسی داشته باشید اونوقت چطور میخواید اونو مدیریت کنید؟ وقتی به Kernel mode دسترسی نداشته باشید چطور میخواید براش سرویس تهیه کنید؟

دوست من، کمی واقع بین باشید. قبلاً هم کاربری در بخش مقالات VB6 در همین سایت قصد طراحی سیستم عامل رو داشت. خب وقتی با این همه مسأله روبرو شد احتمالاً فهمید که راه رو اشتباه انتخاب کرده. اون تاپیک به خاطر اینکه در بخش نامناسبی ایجاد شده بود حذف شده وگرنه لینک میدادم ببینید.

موفق باشید/

lousee_18
یک شنبه 22 آذر 1388, 18:59 عصر
خواهش ميكنم يكي به من كمك كنه:گیج: . من براي درايور نويسي بايد از چي و از كجا شروع كنم .
از دوستان عزيز هم خواهش مي كنم اين بحثو زيادي كشش نديد . اگر كسي مقاله اي يا مطلب مفيدي براي گفتن داره تاپيك بذاره . مرسي

mpmsoft
یک شنبه 22 آذر 1388, 21:01 عصر
سوالتونو در بخش C و یا Embedded مطرح کنید نه در این بخش
این تاپیک قفل شده است