ساخت یه برنامه که قبل از بوت شدن سیستم عامل اجرا شه !
|
2006-04-23, 03:56 AM,
ارسال : #1
|
|||
|
|||
ساخت یه برنامه که قبل از بوت شدن س
با سلام
من یه برنامه می خوام بنویسم که واقعا به کمک شما نیاز دارم و از جاهای مختلفی پرسیدم و به جواب نرسیدم و خیلی هم نوشتنش برام حیاتیه البته برنامه نویسی اون زیاد مشکلی نیست مهم شناخت سیستم عامل هست و این که برنامه در کجا قرار بگیره و چطور اجرا بشه مهمه ! و اما برنامه : نوشتن یه ویروس ( اسمشو گفتن ویروس ولی هدف اذیت نیست چون این یه پروژه است) که قبل از بوت شدن سیستم عامل منظور اینه که قبل از انتخاب نوع سیستم عامل اجرا بشه یا به به بیانی دیگر در قسمتی که سی دی های بوت چک می شن اون جا پیام چاپ بشه و ربطی به سیستم عامل نداره ! و خودمم واقعا موندم چطور اینو بنویسم بازم می گم خیلی واسم مهمه ! منتظر نظرتون هستم ممنون از شما |
|||
2006-04-23, 09:36 PM,
ارسال : #2
|
|||
|
|||
کسی نیست من و راهنمایی کنه !
|
|||
2006-04-23, 10:14 PM,
ارسال : #3
|
|||
|
|||
چرا ,حنما می دونید که این نوع برنامه نویسی مربوط به اسمبلی هستش ,یه منبع برای ویروس نویسی اسمبلی هست که مجتمع فنی(دیباگران) اونو منتشر کرده اسمشو یادم نیست ولی خودم اون کتابو دیدم ,یه کتاب جمع و جوره, حتما جواب سوالتونو اونجا می گیرید.
|
|||
2006-04-24, 03:24 PM,
ارسال : #4
|
|||
|
|||
نیما جان ممنون
من مشکلی تو اسمبلی ندارم مشکل من روش کار سیستم عامل هست و چطور می تونم به حافظه دسترسی پیدا کنم منتظرم |
|||
2006-04-24, 05:30 PM,
ارسال : #5
|
|||
|
|||
شما باید کد خودت رو برای اجرا شدن در اختیار یک OS قرار بدی حداقل برای یکبار هم که شده و این امری اجتناب ناپذیره و بعد از اون این کد می تونه خودش را در پروسه بوت سیستم قرار بده و به همه جا دسترسی داشته باشه و ۱۰۰۱ کار بکنه ....!
Try to BROADCAST your knowledge, Instead of install a FIREWALL for it.....Good luck |
|||
2006-04-24, 06:26 PM,
ارسال : #6
|
|||
|
|||
فوقش بتونی مثلا mbr رو پاک کنی ...همین ....که ربطی به سیستم عامل نداره ... فقط بوت شدنش رو با مشکل مواجه میکنه .... وگرنه ... همونطور که دوستمون گفتن ... اینکه برنامه ات جزئی زا سیستم عامل بشه ...... یه جورائی تقریبا غیر ممکنه ... خلاصه اگه تونستی حتی با همین ویندوز سراپا خطا و باگ یه همچین کاری بکنی .. برو مایکروسافت که استخدامت کنه !!!
|
|||
2006-04-24, 06:31 PM,
ارسال : #7
|
|||
|
|||
Anonymous نویسنده :فوقش بتونی مثلا mbr رو پاک کنی ...همین ....که ربطی به سیستم عامل نداره ... فقط بوت شدنش رو با مشکل مواجه میکنه .... وگرنه ... همونطور که دوستمون گفتن ... اینکه برنامه ات جزئی زا سیستم عامل بشه ...... یه جورائی تقریبا غیر ممکنه ... خلاصه اگه تونستی حتی با همین ویندوز سراپا خطا و باگ یه همچین کاری بکنی .. برو مایکروسافت که استخدامت کنه !!! این بالائی من بودم ... آلن جان .. خواهشا قابلیت پست مهمان رو غیر فعال کن .. تا از این دردسر ها نکشیم .... ! من برای درد خود نامی انتخاب کرده ام و آن را سگ مینامم؛ سگ من به اندازه هر سگی، باهوش، مزاحم، بیشرم، سرگرم کننده و وفادار است ... |
|||
2006-04-25, 05:42 AM,
ارسال : #8
|
|||
|
|||
<!-- e --><a href="mailto:[email protected]">[email protected]</a><!-- e -->
ممنون که پاسخ می دین هر چند بعضی ها .... ولی بازم ممنون ببینین این برنامه من باید قبل از command com اجرا بشه فکر کنم این جوری واضح تر شد یعنی اگه این مشکل حل بشه دیگه تمومه ! کاریکه من انجام باید بدم همینه ! بازم ممنون که پاسخ دادین ممنون منتظرم |
|||
2006-04-25, 08:31 AM,
ارسال : #9
|
|||
|
|||
Anonymous نویسنده :[email protected]شما اگه اون کتابو یه نگاه مختصری بکنی خالی از لطف نیست و شما بد نیست که از google شروع کنید |
|||
2006-04-25, 12:53 PM,
ارسال : #10
|
|||
|
|||
Re: ساخت یه برنامه که قبل از بوت شد
[email protected] نویسنده :با سلام اسم این نوع برنامه ها BootLoader ه! Wish you Were here ... |
|||
2006-04-25, 03:47 PM,
ارسال : #11
|
|||
|
|||
zoup عزیز .... این دوستمون bootloader نمیخواد .... میخواد با همون Loader ویندوز و سیستم عامل ویندوز کاری رو قبل از اجرای خود سیستم عامل انجام بده ... که کمی تا قسمتی غیر قابل تصوره ...
اممممممم... شایدم منظورش loader بوده واقعا ..... دوست عزیز ... اگه bootloader میخوای ... میتونی sourcecode اش رو تو اینترنت پیدا کنی ... یه سر به programmersheaven بزن ... موفق باشید ... من برای درد خود نامی انتخاب کرده ام و آن را سگ مینامم؛ سگ من به اندازه هر سگی، باهوش، مزاحم، بیشرم، سرگرم کننده و وفادار است ... |
|||
2006-04-25, 07:54 PM,
ارسال : #12
|
|||
|
|||
دوست عزیز سلام
اگه کاری رو که می خوای انجام بدی دقیق و موبه مو توضیح بدی شاید بتونیم کمکت کنیم . چون تو هر مرحله دسترسی ها فرق می کنه . موقعی که هنوز kernel image بار نشده شما هر کاری می تونی بکنی به دلیل ست نشدن dual mode operation flag در cpu . به محض لود شدن سیستم عامل دیگه نمی تونی هر دستوری که دلت خواست انجام بدی چون سیستم عامل با ست کردن این flag راهت رو می بنده ولی در عوض هنوز می تونی به جای logical addressing از physical addressing استفاده کنی . بعد از لود شدن کامل سیستم عامل دیگه تو user space ای و برای هر کار باید از monitor سیستم عامل اجازه بگیری . بنابراین کاری که می خوای بکنی دقیق بگو . با اون چیزی که گفتی من فکر می کنم یه چیزی تو مایه های boot loader باید بنویسی |
|||
2006-04-25, 10:40 PM,
ارسال : #13
|
|||
|
|||
سعید جان و نیما و دیگر دوستان عزیز ممنونم که جواب می دین
حقیقتش این به عنوان یه پزوژه است و من تا به حال همچین برنامه هاییی ننوشتم و برنامه نویسی داخل سیستم عامل نوشتم با سی پاسکال پی اچ چی اسمبلی .... ولی اینجوری تا به حال برنامه ننوشتم سعید عزیز و دیگر دوستان من فردا دوباره از استادمون راجع به این ویروسه می پرسم ولی چیزی که ایشون گفته همینه که ربطی به سیستم عامل نداره و قبل از اون اجرا می شه و یه سری کار انجام می ده که حالا فرض می کنیم اون کار چاپ یه پیغام ساده مثل hello باشه ! منتظر پاسختون هستم راستی استادمون گفته که اگه اولین نفر اینو بنویسه دیگه واسه اونای دیگه نمره نداره به نوعی از ارزش می افته واسه همین مجبورم زودتر بنویسم بازم می رم می پرسم می یام بیشتر توضیح می دم ممنون |
|||
2006-04-25, 10:40 PM,
ارسال : #14
|
|||
|
|||
سعید جان و نیما و دیگر دوستان عزیز ممنونم که جواب می دین
حقیقتش این به عنوان یه پزوژه است و من تا به حال همچین برنامه هاییی ننوشتم و برنامه نویسی داخل سیستم عامل نوشتم با سی پاسکال پی اچ چی اسمبلی .... ولی اینجوری تا به حال برنامه ننوشتم سعید عزیز و دیگر دوستان من فردا دوباره از استادمون راجع به این ویروسه می پرسم ولی چیزی که ایشون گفته همینه که ربطی به سیستم عامل نداره و قبل از اون اجرا می شه و یه سری کار انجام می ده که حالا فرض می کنیم اون کار چاپ یه پیغام ساده مثل hello باشه ! منتظر پاسختون هستم راستی استادمون گفته که اگه اولین نفر اینو بنویسه دیگه واسه اونای دیگه نمره نداره به نوعی از ارزش می افته واسه همین مجبورم زودتر بنویسم بازم می رم می پرسم می یام بیشتر توضیح می دم ممنون <!-- e --><a href="mailto:[email protected]">[email protected]</a><!-- e --> |
|||
2006-04-26, 08:05 AM,
ارسال : #15
|
|||
|
|||
سلام
خب این بحث یعنی اینکه شما باید توی mbr یک برنامه بنویسی که قابلیت اجرا داشته باشه. <!-- m --><a class="postlink" href="http://www.barnamenevis.org/forum/showthread.php?t=21849">http://www.barnamenevis.org/forum/showt ... hp?t=21849</a><!-- m --> |
|||
2006-04-26, 04:33 PM,
ارسال : #16
|
|||
|
|||
Salam
Bediye inkaree ke mikhay bokoni ine ke faghat mitooni az INTRRUPT haye roye BIOS mesle int 0x10va ya int 0x13 estefade koni va kheili sakhte darzemn dige nemitooni ro komak SYSCALL ya INTRUPPT haye OS hesab koni pishnahad mikonam Code haye dakhel KERNEL linux dar ghesmat boot ro bekhooni faghat badish ine ke Assembly AT&T va momkene ye kami zede hal bashe albate dar noskhehaye ghadimitre kernel onaro IBM compatible neveshtan aghar kheili ba shoro kardan az aval khoshet miyad boro soraghe MINIX mitooni ye 50MB tisho az internet download koni tamame source on ro daree va kochike ziyad aziyatet nemikone dar zemn fekr konam kar kardane ba FileSystem kheili khaste konande bashe choon bara khoondane yre file azsuystem bayad hadaghal 6000 khat asembly benevizi ;( dar harsorat man khodam az in kar khosham miyomad ye zamane to DOS 6.22 ba fat 32 kar kardam vali ensafan sakhte good luck Before Asking a new Question PLEASE search the forum |
|||
2006-04-27, 08:07 PM,
ارسال : #17
|
|||
|
|||
gr8linux, عزیز ممنون از پاسخ جالب که دادین اتفاقا به نفر همچین جوابی داد ولی گفت از اینتراپت کارت گرافیک هم باید استفاده کنی اتفاقا امروز گفت و باید روش فکر کنم
rezatavak, از شما هم ممنون که این لینک رو اینجا قرار دادی من مطالب این فرم رو می خونم اگه به جواب نرسیدم دوباره مزاحمتون می شم ممنون از شما <!-- e --><a href="mailto:[email protected]">[email protected]</a><!-- e --> |
|||
2006-05-01, 09:04 PM,
ارسال : #18
|
|||
|
|||
با سلام
دوباره مزاحمتون شدم این چیزی که من می خوام بنویسم یه bootsectore که در این زمینه در فرومی که رضای عزیز معرفی کردند یه ای بوک دیدم که البته اینجا شاید یه کم سطح بالاست در صورتی که من اصلا نمی دونم از کجا شروع کنم و با شروع کار مشکل دارم در ضمن برنامه من باید این اعمال رو انجام بده اسلش رو به خط تیره ( یا همون منها ) و خط تیره رو به بک اسلش تبدیل کنه منظورم اینه که اسلش در صفحه بچرخه و استادمون امروز گفت ربطی به اینتراپت کارت گرافیک نداره ! اگه لطف کنید جوابمو بدیم ممنون می شم در ضمن اگه لطف کنید آی دی خودتون رو بدین تا با هم چت کنیم واقعا لطف بزرگی کردین آقا رضا من آی دی شما رو اد کردم ولی متاسفانه احتمالا زمانی که شما هستین من نیستم و بالعکس بازم خوشحال می شم یه ساعتی رو مشخص کنید با هم چت کنیم منتظر جوابتون هستم بازم ممنون <!-- e --><a href="mailto:[email protected]">[email protected]</a><!-- e --> |
|||
2006-05-02, 10:35 AM,
ارسال : #19
|
|||
|
|||
سلام
با این چیزهایی که گفتی به غیر از این قضیه اسلش و خط تیره باید یه چیزی شبیه بوت لودر بنویسی . بوت لودر رو هم فکر کنم می دونی چه جوری میشه نوشت . یک تکه 512 بایتی داره که در یک ادرس مشخص حافظه که توسط BIOS تنظیم شده قرار می گیره و ادرس های داخلی اش relocatable نیست . در این تکه می تونی ادرس به تکه های بعدی بوت لودر رو بدی . به عنوان مثال می تونی به کد های اسمبلی لینکس در boot/ کد کرنل بری یا اصلا کد یک بوت لودر مثل lilo و grub و loadlin و ... ببینی . یه راه دیگه هم هست . می تونی کد بوت لودرت رو مثلا گراب رو تغییر بدی که بعد از شناسایی پارتیشن root و قبل از load کرنل برنامه شما رو اجرا کنه . البته یادت باشه تو این روش دیگه توابع سیستمی مانند ()open یا توابع کتابخانه ای مثل ()fopen و .... نداری چون هنوز سیستم عاملی لود نشده و تنها امکاناتت استفاده از روتین های خود BIOS است . و اما در مورد اون قضیه اسلش و خط تیره متوجه نشدم که منظورت چه هست ؟ می خوای مثلا تو فایل سیستم به جای مثلا home/ ببینی home- ؟ خودم تا به حال این کار رو نکردم ولی به احتمال 90% باید بشه این کار رو کرد . که تو VFS کرنل بتونی این کاراکتر رو تغییر بدی . تو دایرکتوری کد کرنل شاخه fs که VFS اونجا پیاده سازی شده باید فایل ها رو چک کنی ببینی که کجا می تونی این تغییر رو بدی . من فکر می کنم باید file.c و filesystems.c رو تغییر بدی . این قضیه ربطی به اون قضیه بوت لودر و ... نداره . شما داری یک ماجول کرنل که وظیفه handle کردن فایل سیستم رو داره تغییر میدی . امیدوارم منظورت رو درست فهمیده باشم . |
|||
2006-05-04, 05:36 AM,
ارسال : #20
|
|||
|
|||
آقا سعید ممنون خیلی ممنون که وقت گذاشتی به من جواب دادی بازم ممنون
اینکه باید 512 بایت باشه رو یک جا خونده بودم ولی حقیقتش بقیه مطالبی رو که گفتی بیشتر از نصفشو نفهمیدم یعنی من اصلا نوشتن اینجور برنامه ها رو کار نکردم و خیلی مبتدی هستم مثلا نمی دونم که این برنامه رو چطور باید تستش کرد و یا چطوری در حافظه قرارش داد راستی منظور از اسلش به بک اسلش اینه که البته اینجور که من فهمیدم باید یک اسلش در صفحه بچرخه منظور از چرخیدن هم یعنی در جای خودش مثل یک پنکه ! اگه شما لطف کنید یه آی دی بدین با هم چت کنیم خیلی خیلی ممنون می شم چون واقعا موندم و حل این برنامه هم خیلی واسم مهمه والا از مهمی هم گذشته ! وگرنه هم هرجور می تونید راهنمایی کنید ممنون می شم واقعا واسم مهمه بازم ممنون منتظر جواب شما هستم |
|||
|