وبلاگ فرهاد مرتضی پور

Farhad Mortezapour's Blog

وبلاگ فرهاد مرتضی پور

Farhad Mortezapour's Blog

آشنایی با HIBERNATE در ویندوز XP

زمانی که سیستم را خاموش می کنید و یا به هر دلیلی میخواهید از ویندوز خارج شویدحتما از شما درباره ذخیره برنامه ها سؤال می شود.نکته جالب توجه در ویندوز XP خروج از آن بدون ذخیره اطلاعات است.در این صورت شما می توانید برنامه ها را

در هر حالتی که هستند رها کرده و از ویندوز خارج شوید.مجدد که وارد محیط ویندوز می شوید می بینید که هیچ چیز دست نخورده و برنامه ها به همان شکل باقی مانده اند حالا شما می توانید به کارتان ادامه دهید!!! (حتی پنجره ها باز مانده اند)
این حالت را اصطلاحا
HIBERNATE میگویند.برای فعال کردن آن از منوی استارت به کنترل پنل رفته و Power Options را باز کنید سپس در سربرگ Hibernate گزینه Enable Hibernation را فعال کنید و تنظیمات را تایید کنید.حال منوی استارت را باز کرده

و turn of computer را انتخاب کنید. در صفحه باز شده دکمه shift را بزنید.میبینید که گزینه standby به hibernate تغییر پیدا

می کند.برای بردن کامپیوتر به این حالت دکمه shift را نگه داشته و روی hibernate کلیک کنید.

 

موفق باشید !

آموزش بکار بردن وقفه در زبانهای تحت DOS

اول باید بدانیم وقفه چیست:

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

می کند.

وقفه ها به دو رده کلی تقسیم می شوند:

1) وقفه های نرم افزاری: این وقفه ها توسط نرم افزار تولید می شوند وکارهای نرم افزاری انجام می دهند. مثل وقفه های DOS

2) وقفه های سخت افزاری: این وقفه ها توسط سخت افزار تولید می شوند مثل وقفه صفحه کلید

تعداد 256 وقفه سخت افزاری و هم نرم افزاری در سیستم وجود دارد که در جدول زیر آمده اند البته هر کدام از این وقفه ها ممکن است دارای توابعی باشند که در زیر فقط اصل کار این وقفه ها ذکر شده است.

 

شماره وقفه

آدرس وقفه

کار وقفه

00

01

02

03

04

05

06

07

08

09

0A

 

0B

0C

0D

0E

0F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

1F

20

21

22

23

24

25

26

27

28

29-2E

2F

30-32

33

34-40

41

42-45

46

47-49

4A

4B-5B

5C

5D-66

67

68-6F

70

71

72

73

74

75

76

77

78-7F

80-F0

F1-FF

000-003

004-007

008-00B

00C-00F

010-013

014-017

018-01B

01D-01F

020-023

024-027

028-02B

 

02C-02F

030-033

034-037

038-03B

03C-03F

040-043

044-047

048-04B

04C-04F

050-053

054-057

058-05B

05C-05F

060-063

064-067

068-06B

06C-06F

070-073

074-077

078-07B

07C-07F

080-083

084-087

088-08B

08C-08F

090-093

094-097

098-09B

09C-09F

0A0-0A3

0A4-0BB

0BC-0BF

0C0-0CB

0CC-0CF

0D0-0FF

104-107

108-117

118-11B

11C-127

128-12B

12C-16F

170-173

174-19B

19C-19F

1A0-1BF

1C0-1C3

1C4-1C7

1C8-1CB

1CC-1CF

100-103

104-107

108-10B

10C-10F

1E0-1FF

200-3C3

3C4-3CF

پردازنده: تقسیم بر صفر

پردازنده: تک گام

پردازنده: NMI وقفه بدون ماسک (خطا برای RAM )

پردازنده: نقطه توقف برنامه دردسترس نیست

پردازنده: سرریزی عدد

Hardcopy

دستورالعمل ناشناخته (فقط برای80286  بکار می رود)

رزرو شده

IRQ0: تایمر ( هر ثانیه 18.2 بار)

IRQ1: صفحه کلید

IRQ2: دومین تراشه 8259 ( فقط برای کامپیوترهای AT بکار می رود )

IRQ3: پورت سریال شماره 2

IRQ4: پورت سریال شماره 1

IRQ5: هارد درایو

IRQ6: دیسکت

IRQ7: چاپگر

BIOS: تابعهای صفحه نمایش

BIOS: معلوم کردن ترکیب سیستم

BIOS: معلوم کردن اندازه حافظه RAM

BIOS: توابع دیسکت وهارد دیسک

BIOS: دسترسی به پورت سریال

BIOS: نوار مغناطیسی وتوابع پیشرفته

BIOS: پرسش از صفحه کلید ( پویش صفحه کلید )

BIOS: دسترسی به پورت موازی چاپگر

صدا زدن ROM BASIC

BIOS: BOOT کردن سیستم ( Ctrl+Alt+Delete )

BIOS: فرمان Time یا Date

کلید Break ( نه کلید Ctrl-C ) فشرده شده است

بعد از هر بار فراخوانی INT 8 فراخوانی می شود

آدرس جدول پارامتر ویدئویی

آدرس جدول پارامتر دیسکت

آدرس نمونه کارکتر بیتی

DOS: خروج از برنامه

DOS: صدا کردن توابع DOS

آدرس خروج ازروتین برنامه در  DOS

آدرس روتین Ctrl-Break در DOS

آدرس خطا در DOS

DOS: خواندن دیسکت و هارد دیسک

DOS: نوشتن دیسکت و هارد دیسک

DOS: خروج از برنامه و مقیم شدن در حافظه

DOS: DOS اشغال نشده است

DOS: رزرو شده

DOS: Multiplexer ( تقسیم کننده )

DOS: رزرو شده

توابع گرداننده ماوس

DOS: رزرو شده

آدرس جدول 1 هارد دیسک

رزرو شده

آدرس جدول 2 هارد دیسک

برای استفاده برنامه ها

دسترسی به زنگ ساعت ( فقط در کامپیوترهای AT)

خالی: برای استفاده برنامه ها

توابع NETBIOS

خالی: برای استفاده برنامه ها

توابع مدیریت حافظه EMS

خالی: برای استفاده برنامه ها

IRQ08: ساعت بلا درنگ ( فقط در کامپیوترهای AT )

IRQ09: (فقط در کامپیوترهای AT )

IRQ10: (فقط در کامپیوترهای AT )

IRQ11: (فقط در کامپیوترهای AT )

IRQ12: (فقط در کامپیوترهای AT )

IRQ13: NMI در 80387 (فقط در کامپیوترهای AT )

IRQ14: هاردیسک (فقط در کامپیوترهای AT )

IRQ15: (فقط در کامپیوترهای AT )

رزرو شده

برای استفاده مفسر BASIC

رزرو شده

 

برای استفاده از این وقفه ها باید بدانید که بعضی از این وقفه ها برای کار نیاز به مقدار دهی ثباتها دارند.

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

در زبان پاسکال:

یک Type  به عنوان Registers در یونیت DOS برای کار با ثباتهای پردازنده قرار دارد که همه ثباتها به جز ثباتهای CS,IP در آن قرار دارند.

یک  زیر روال به نام Intr وجود دارد که وقفه را می فرستد و شکل کلی آن به صورت زیر است

Intr(شماره وقفه,Registers متغیری از نوع);

درزبان پاسکال برای اعداد در مبنای 16 از علامت $ استفاده می کنیم.

من می خواهم برنامه ای به زبان پاسکال با استفاده از وقفه بنویسم که اندازه مکان نما را بزرگ کند.

Uses

    Dos,Crt;

 Var

    Regs:Registers;

  Begin

       Regs.AH:=1;

       Regs.CH:=0;

       Regs.CL:=13;

       Intr($10,Regs);

       ReadKey;

  End.

در زبان سی:

یک union به عنوان REGS در dos.h است برا استفاده ازثباتهای 16 بیتی از رکورد x وبرای استفاده از ثباتهای 8 بیتی از رکورد h استفاده می کنیم وثباتهای سگمنت هم در union دیگری به نام SREGSقرار دارند

در زبان سی برای اعداد در مبنای 16 ازعلامت 0x در ابتدای عدد استفاده می کنیم

یک زیر روال به نام int86 وجود دارد که وقفه را می فرستد و شکل کلی آن به صورت زیر است

Int86(شماره وقفه,پارامترهای ورودی,پارامترهای خروجی);

برنامه بالا را به زبان سی می نویسم

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

#include<dos.h>

 main()

  {

                union REGS r;

                r.h.ah=1;

                r.h.ch=0;

                r.h.cl=13;

                int86(0x10,&r,&r);

                getch();

}

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

 

برای اجرای وقفه توسط زبان اسمبلی از دستور INT استفاده می شود.

من همان مثال را در زبان اسمبلی پیاده کرده ام.

.Model  Small

ORG 100H

CodeSg Segment Para Code ‘Code’

   Main Proce Far

                Assume CS :CodeSg,DS :CodeSg,SS :CodeSg,ES :CodeSg

                MOV         AH,1

                MOV  CH,0

                MOV         CL,13

                INT          10H

                MOV         AH,4CH

                INT 21H

                RETF

  Main EndP

CodeSg EndS

                End          Main

موفق باشید. نظر یادتون نره !

عید نوروز

هر روزتان نوروز ، نوروزتان پیروز باد.

 
امیدوارم سال خوب و خوشی داشته باشید.

IP آدرس چیست ؟

کسانى که در مورد شبکه هاى کامپیوترى اطلاعات مختصرى داشته باشند حتما مى دانند که هر شبکه کامپیوترى داراى آدرسى است که بوسیله اعداد مشخص مى گردد .

این اعداد از چهاربخش تشکیل شده اند که هر بخش عددى بین 0 الى 255 را شامل مى گردد .
مثال : 219.218.139.17 .به این اعداد آدرس
IP مى گویند . همچنین هر کامپیوتر هم هنگامى که به شبکه (هر شبکه اى) متصل شود یک آدرس IP به آن تعلق مى گیرد . این آدرس در واقع آدرس آن کامپیوتر خاص در شبکه است و از طریق آن دیگر کامپیوتر ها مى توانند با کامپیوتر مذکور ارتباط برقرار نمایند و یا به منابع آن دسترسى پیدا کنند .
در صورتى که بخواهید آدرس
IP خود را پیدا کنید هنگامى که به اینترنت متصل هستید از قسمت Run فرمان winipcfg را صادر نمایید و یا پس از تایپ دستور cmd در Run واردDos Prompt شده و تایپ کنید ipconfig . در قسمت IP Address شماره IP کامپیوتر شما مشخص شده . ( در ویندوز XP هنگامى که به اینترنت متصل هستید روى علامت کامپیوترهاى کوچکى که کنار ساعت ظاهر مى شوند کلیک راست کنید و گزینهDetail  را انتخاب کنید . در قسمت Client IP address شما شماره خودتان را مشاهده
مى کنید )

شما اگر از طریق مودم شماره گیر و خط تلفن به اینترنت متصل شوید ، هر بار یک آدرس IP متفاوت به شما تعلق مى گیرد . در واقع سه بخش سمت چپ آدرس IP متعلق به ISP یا همان اشتراک دهنده اینترنت شما مى باشد و آخرین قسمت سمت راست شماره شما در آن نشست ارتباط با اینترنت است . ( در عدد مقابل 32 مربوط به شماست 218.219.167.32 )
بنابراین ممکن است شما هر بار که به اینترنت متصل مى شوید فقط عدد سمت راست آدرس شما تغییر کند . البته این بستگى به این امر دارد که
ISP شما چند شبکه داشته باشد . چون آدرس هر شبکه با دیگرى متفاوت خواهد بود . معمولا اگر چند شماره تلفن در اختیار شما باشد هر کدام متعلق به یکى از شبکه هاى ISP خواهد بود . البته این مسئله کاملا به ISP شما بستگی دارد و ممکن است با وجود داشتن شماره های مختلف سری IP یکسانی داشته باشند.

مهم : دوستانى که با مودم کابلى یا موارد مشابه به اینترنت متصل مى شوند باید توجه داشته باشند که در بیشتر موارد شماره IP آنها براى مدتى که اشتراک دهنده اینترنت تعیین مى نماید مثلا یک ماه یا بیشتر کاملا بدون تغییر باقى مى ماند . این امر بسیار خطرناک است و در واقع مى توان گفت افرادى که مودم کابلى دارند به دلیل داشتن سرعت بالا و IP ثابت طعمه هاى بسیار خوبى براى هکرها هستند و در صورت به دام افتادن ممکن است بسیار بیشتر از سایرین لطمه بخورند . چون اغلب هکرها از PC این افراد براى حمله به کامپیوترهاى دیگر استفاده مى نمایند .
مودم کابلى در ایران هنوز چندان رایج نشده و بیشتر در کشورهاى قاره اروپا و آمریکا استفاده مى شود . در بیشتر آن کشورها تجارت الکترونیک و خرید و فروش و مبادله پول از طریق اینترنت امرى رایج به شمار مى رود . همین امر باعث مى شود که کلاهبرداران اینترنتى به راحتى کامپیوترهاى محافظت نشده را پیدا کرده و با دزدیدن شماره کارتهاى اعتبارى ، صاحب کامپیوتر را دچار زیانهاى مالى نمایند . پس توصیه ما به این قبیل دوستان این است که در حفاظت از کامپیوتر خود حساستر باشند .

موفق باشید !

سورس یک ساعت قشنگ عقربه ای و دیجیتالی در Turbo C


با سلام خدمت همه دوستان !

 

سورس یک ساعت قشنگ عقربه ای و دیجیتالی را که خودم در TC نوشم

را می توانید از اینجا بردارید فقط یادتون باشه نظر بدین !

توجه : به صورت zip شده است !

 

باتشکر فرهاد

آشکارسازی فعالیتهای مخفی ویندوز در هنگام بارگذاری


زمانی که ویندوز
XP راه اندازی میشود ، ویندوز تصویر آرم خودش را نشان می دهد و در زیر این آرم، یک نمـــودار پیشرفت را نشـــــان می دهد ،  به این مفهوم که ویندوز در حال بارگذاری شدن در حــافظه است. اگر دلتان می خواهد بدانید ویندوز در آن لحظه چه عملیاتی انجام می دهد با ترفند زیر می توانید کاری کنید که ویندوز این آرم را نشان ندهد و پرده از اسرار مراحل راه اندازیش بر دارد !
 
مراحل زیر را دنبال کنبد :
 
روی دکمه Start کلیک کرده و در منوی باز شده روی گزینه Run کلیک کنید .
 
در کادر Run عبارت msconfig.exe را نوشته و Enter را بزنید.
 
کادر محاوره ای System Configuration Utility باز می شود، در این کادر به زبانه BOOT.INI بروید. در کادر متن بالای پنجره در زیر قسمت [Operating Systems] عبارتی مثل خط زیر را می بینید :
 multi(0)disk(0)rdisk(0)partition(1)WINDOWS= "Microsoft Windows XP Professional" /fast detect 
 
روی آن کلیک کنید . در قسمت پایین کادر ، یعنی Boot Options گزینه /SOS را فعال کنید تا این عبارت به انتهای خط مذکور اضافه شود. دکمه Apply و سپس دکمه OK را بزنید.
 
از این پس هر وقت کامپیوترتان را روشن کنید در هنگام راه اندازی ویندوز، دیگر آرم آن را نخواهید دید و به جایش ... !؟

 موفق باشید.

 از p30world.com

رایت بر روی سی دی های ۷۰۰ مگا بایتی تا ۱ گیگا بایت !


سلام ! امیدوارم کمال استفاده را ببرید ! موفق باشید !

ابتدا می بایست ببینید رایتر شما overburning ساپورت می کنه یا نه . برای تست این کار مراحل زیر را دنبال کنید :
حال به منوی File رفته و قسمت preferences رو انتخاب کنید سپس در قسمت

 Expert features دقت کنید که عبارت enable overburn قعال باشد . در زیر همین گزینه مقدار مجاز overburn رو به دقیقه مشخص کنید .
 حال به منوی File رفته و گزینه New را انتخاب کنید و در قسمت Multisession گزینه

 No Muttisession را انتخاب نمایید . سپس در قسمت Burn عبارت Write Method رو به

 Disc at Onec تبدیل کنید .

حال می تونید سی دی خود را رایت کنید مقدار رایت هم بستگی خیلی زیادی به رایتر داره .

دریچه‌ای بسوی ASP


سلام !!! بهتر نیست کمی با ASP آشنا شویم !!!

آیا به دنبال راهی برای ایجاد صفحات پویا و سفارشی بر روی سایتتان هستید؟ ASP یا Active Server Pages ممکن است بهترین انتخاب برای شما باشد.
ASP یک زبان اسکریپت‌نویسی است که توسط مایکروسافت ایجاد گردید. این صفحات حاوی دستورات HTML و کدهای ASP جهت تولید صفحات پویا می‌باشد. ASP دارای محدودیت‌هایی نیز می‌باشد که از آن جمله قابلیت اجرا فقط بر روی وب سرورهای IIS است.
HTML با ASP
نکته: ASP و HTML دو چیز کاملاً متفاوت از یکدیگرند. کدهای ASP معمولاً در لابلای کدهای HTML جای می‌گیرند. HTML یک صفحه استاتیک است که هرگاه مرورگر آن را درخواست نماید، بدون هیچ‌گونه پردازشی در سرور نمایش داده خواهد شد. اما در صورتی که یک صفحه HTML حاوی دستورات ASP باشد، قبل از نمایش کدهای ASP بر روی سرور پردازش شده و سپس نتایج آن جهت نمایش به مرورگر ارسال می‌گردد.
ASP با JavaScript
تفاوت این دو زبان در محل اجرای آن‌هاست. ASP همانطور که قبلاً گفته شد بر روی سرور پردازش می‌شود، اما JavaScript بر روی مرورگر بازدیدکننده نمایش داده می‌شود. در صورتی که مرورگر کاربر JavaScript را پشتیبانی نکند، عملاً کل اسکریپت بلااستفاده خواهد شد. شمن اینکه قابلیت استفاده از بانک اطلاعاتی بر روی JavaScript مقدور نیست.
ASP با CGI
می‌توان گفت این دو شباهت‌های زیادی با هم دارند. شما می‌توانید از CGI برای دستیابی به بانک‌های اطلاعاتی، تولید صفحات پویا، سفارشی استفاده نمود. CGIها بر روی سرور اجرا می‌شوند. اما CGI از یک برنامه دیگر برای انجام کارها استفاده می‌کند و این به معنای بار اضافی بر روی وب‌سرور است. علاوه بر مشکلات تغییر در کد برنامه در صورت مراجعات زیاد ممکن است صفحات به کندی بارگذاری شوند.
مثال: پردازش اطلاعات ورودی یک فرم در وب
با استفاده از
HTML

شما فقط می‌توانید فرم را بسازید. اما پردازش اطلاعات موجود در فرم با استفاده از HTML مقدور نیست.
با استفاده از
JavaScript

با استفاده از این زبان شما می‌توانید فرم را در مرورگر بازدیدکننده بررسی نماید. اما هیچ‌گونه عملی بر روی این‌داده‌ها امکان پذیر نیست. مانند: ذخیره داده‌ها بر روی یک فایل.
با استفاده از
CGI

در هنگام پردازش CGI یک ارتباط با یک برنامه دیگر بر روی وب‌سرور برقرار می‌کند. اطلاعات موجود در فرم به هرنحوی که برنامه‌نویس بخواهد مورد استفاده قرار خواهند گرفت. اما سرور مجبور به حفظ ارتباط و نیز اجرا نمودن برنامه مرتبط خواهد داشت.
با استفاده از
ASP

با ASP اجازه انجام فعالیت‌های مختلف را بر روی اطلاعات فرم در اختیار سرور می‌گذارد. دستورات ASP در داخل یک فایل با پسوند asp. ذخیره و اجرا می‌شوند.

ASP زبانی قدرتمند برای توسعه‌دهندگان وب می‌باشد. اگر شما نیز به یک سرور IIS دسترسی دارید، می‌توانید همین حالا شروع به ساخت صفحات داینامیک، پویا و سفارشی نمایید.

 

به نقل از :uwdg.net  

 

باتشکر - نظر یادتون نره !!!

ورود و استفاده امن از ایمیلهای YAHOO !


با سلام خدمت همه دوستان !

همواره سعی کنید برای ورود امن به بخش چک میل خود در سایت YAHOO نشانی آنرا به صورت زیر وارد کنید :

https://mail.yahoo.com

و به اخطار Do you want to proceed پاسخ Yes بدهید .

متوجه تفاوت امر شدید که ؟
یعنی به جای
http از https استفاده کنید ( یه S اضافه کنید )

پروتکل ارتباطی
https اطلاعات شما را در مبدا به کد تبدیل کرده و سپس آنرا ارسال می کند و پس از رسیدن به مقصد آنها را کد گشایی می کند .

بدین ترتیب بسته های در حال عبور از شبکه همواره به صورت کد شده انتقال داده می شوند . در این صورت اگر شخصی بتواند در بین راه به این اطلاعات دست پیدا کند با یک سری اطلاعات کد شده مواجه خواهد شد !

پس همواره سعی کنید در زمان ورود به سایتهای مهم و حساس آدرس آنها را به صورت
https بنویسید تا مستقیما به آن وصل شوید و امنیت اطلاعات شما به خطر نیفتد. خصوصا حین تغییر پسورد.

از ستاره سرخ

اگه نظر بدین خوشحالم کردین !!!