برترین مقالات کامپیوتر

برترین مقالات کامپیوتر

برترین مقالات کامپیوتر

برترین مقالات کامپیوتر

Pascal

زبان پاسکال یکی از زبانهای برنامه سازی است که ویژگیهای آموزشی آن بسیار بالاست یعنی زبان خوبی برای آموزش برنامه نویسی منظم و دقیق است.قابلیت خوانایی و درک برنامه های این زبان بالاست ومیتوان برنامه هایی نوشت که احتمال خطاهای آنها بسیار اندک باشد علتش این است که یک زبان ساختار یافته (structed) است .

ساختار کلی برنامه چیست؟
1-تعریف
2-به وسیله procedure و functionقسمتهای تکراری را از بین ببریم
3-بدنه
فرم کلی پاسکال:

اسم Program
;
تعریف ثابت const
;
تعریف نوع type
;
تعریف متغیرها var
)
پارامترها ) نام procedure

begin
____
____
____
end ;

; ( پارامترها ) نام  نوع تابع  function
begin
____
____
____
end ;
begin
____
____
____
end .

متغیر : محلی است که دارای یک اسم می باشد و می توان مقداری را در آن ذخیره کرد

انواع متغیرها در پاسکال:
Integer :انواع عددی صحیح شامل اعداد بدون نقطه ممیز است
نوع مقادیری که می پذیرند طول(بایت)
byte 0 تا 255 1
Shortint 128- تا 127 1
integer 32768- تا 32767 2
Word 0 تا 65535 2
Longint 2147483648- تا 2147483647 4



اعداد اعشاری:
انواع عددی اعشاری شامل اعدادی با نقطه ممیز است

نوع مقادیری که میپذیرند ارقام با معنی طول(بایت)
single 1.5e-45 تا3.4e38 7 تا 8 4
real 2.9e-39 تا 1.7e38 11 تا 12 6
Double 5.0e-324تا 1.7e308 15 تا 16 8
extended 1.9e-4951تا 1.1e493 19 تا 20 10
انواع داده های اعشاری

-Char :
نوع داده کاراکتری که با کلمه char مشخص می شود میتواند یک کاراکتر را در خود نگهداری کند بنابراین کاراکترها در یک بایت از حافظه کامپیوتر ذخیره می شوند

String - :
این نوع داده ها برای ذخیره رشته ها مثل اسامی افراد به کار می رود و با کلمه کلیدی string مشخص ی گردد
برای هر رشته باید طول معلوم کنیم اگر طولی تعریف نشود به طور پیش فرض 80 در نظر گرفته میشود(مقدار طول حداکثر 255 است)
- Boolean :
نوع دیگری از داده ها در پاسکال وجود دارند که داده های بولی خوانده می شوند مقادیر بولی دارای دو ارزش درستی یا نادرستی اند که در پاسکال با صفر و یک نمایش داده می شوند صفر به معنی نادرستی و یک به معنی درستی به کار میرود این نوع داده ها با کلمه Boolean تعریف میشوند.
دستورات ورودی در پاسکال:
دستور Readlnبرای خواندن اطلاعات از ورودی به کار میرود.
فرمت آن به صورت مقابل است:
(اسامی متغیرها)read/ln
اسامی متغیرها باید با کاما از یکدیگر جدا شوند..
برای چاپ اطلاعات در خروجی از دستور write/ln استفاده میکنیم.
فرمت آن به صورت مقابل است:
' یک پیام '
( متغیر ) write/ln
عبارت محاسباتی
انتساب متغیرها:
مقدار ثابت
( متغیر )=: متغیر
عبارت محاسباتی

مثال : برنامه ای بنویسید که دو عدد را از ورودی دریافت و حاصلجمع آن دو را چاپ کند .
Program add;
Var
a,b:integer;
begin
writeln('enter 2 num');
readln(a,b);
c:=a+b;
writeln('result is =',c);
end.

تکلیف : چرا برنامه باید ادب داشته باشد ؟
مثال : برنامه ای بنویسید که حقوق پایه وتعداد فرزندان یک کارگر را از ورودی دریافت و مبلغ حقوق وی را بر اساس فرمول زیر حساب کنید.
10*تعداد فرزندان + حقوق پایه =حقوق کل
Program test;
Var
Salary:longint;
Child:byte;
kole:integer
Begin
Writeln('enter salary and number of child);
Readln(salary,child);
Kole := salary + child *10
Writeln('kole is ',kole);
END.
اولویت عملگرها:
/ *
- +
شرط:
then شرط if
Begin
____
____
____
end
else
begin
____
____
____
end;
نکته : دستورالعمل قبل از IF سمی کالن نمی گیرد
عناصر شرط:
< > <= >= = <>
اپراتورها :
AND OR NOT XOR
NOT A
1 0
0 1

XOR OR AND B A
0 1 1 1 1
1 1 0 0 1
1 1 0 1 0
0 0 0 0 0

مثال : برنامه ای بنویسید که با دریافت دو عدد بزرگترین آنها را چاپ کند.
Program test;
Var
a,b:integer;
if a>b then
begin
writeln(a);
end
else
writeln(b);
end.

مثال : برنامه ای بنویسید که با دریافت سه عدد به عنوان ضرایب y=ax2+bx+c معادله درجه دو را حل کند(این برنامه را با یک If بنویسید).
Var
A,b,c:integer;
D,x1,x2:real;
Begin
Writeln('enter a,b,c');
Readln(a,b,c);
D:=b*b-4*a*c;
If (d >=0 ) then
Begin
X1:=(-b+sqrt(d))/2*a);
X1:=(-b-sqrt(d))/2*a);

مثال : برنامه ای بنویسید که تعداد فرزندان وحقوق پایه و رتبه یک کارگر را از ورودی دریافت و حقوق کل وی را بر اساس فرمول زیر حساب کند.
کسریها - مزایا +بیمه = حقوق کل
5*رتبه +1000* تعداد فرزند = مزایا
مالیات + بیمه = کسریها

بیشتر کمتر یا مساوی 2 تعداد فرزند
تعداد فرزندان 1000 بیمه
هر چیزی دیگر 20 تا 0 رتبه
حقوق پایه حقوق پایه*100/10 مالیات

begin
writeln('enter salary and grade and number of child');
readln(salary ,num,grade);
if num<=2 then
bimeh:=100
else
bimeh :=num*500;
if (grade>=0) and (grade<=20)then
net := 10/100*salary
else
if grade >20 then
begin
net:=20/100*salary;
mazaya:=num*1000+grade*50;
kasry:=bimeh+net;
kol :=salary + mazaya-kasry;
end;
writeln(kol);
end.

تکلیف : در یک ترکیب شیمیایی 4 عنصر شرکت دارند مقدار مجاز برای تهیه ماده ای به نام asxd به این صورت است.
A 0 ~ 50
S 0.5 ~ 0.83
X 81 ~ 92 or 824 ~ 901
D -100 ~ 100
با دریافت مقادیر a,s,x,d از ورودی به ما بگوید که آیا می توان این ماده را تولید کرد یا نه ؟
Begin
Num:=0;
Writeln('please enter a s x d');
Readln(a,s,x,d);
If (a>0) and(a<50) then
Num:=num+1;
If (s>0.5)and (s<0.83) then
Num:=num+1;
If ((x>81)and(x<92))or ((x>824)and(x<901))then
Num:=num+1;
If (d>-100) and (d<100) then
Num:=num+1;
If num=4 then
Writeln('yes can')
Else
Writeln('you can not');
End.
تکلیف : برنامه ای بنویسید که با دریافت سه عدد و با فرض اینکه عدد دوم وتر میباشد به ما بگویید که آیا این سه عدد تشکیل یک مثلث قایم الزاویه می دهد یا خیر؟

 CASE:
CASE میتواند تعدادای شرط را بگیرد و انتخاب کند.
مقادیری که دستور CASE میپذیرد ORDINAL است مقادیری کهORDINAL هستند دارای ترکیب نیستند و همچنین قابل شمارش هم هستند مثل INTEGER,CHARACTER,BYTE,BOOLEAN,LONGINT,…
پسREAL,STRING ORDINAL<---- نیستند
CASE تنها دستوری است که BEGIN ندارد ولی END دارد
مقدارها میتوانند شامل یک مقدار یا چند مقدار که از یکدیگر با کاما جدا شده اند باشند و یا یگ سری شمارشی باشند مثل:
1:------
1,10,28:------
1..100,150..243:---------
'A'..'Z':---------

Of متغیر Case
Begin : مقدار1
-------
-------
End;
Begin : مقدار2
-------
-------
End;
Begin :Else
-------
-------
End;
End.
مثال : برنامه ای بنویسید که یک عدد را از ورودی دریافت ( (0<=x<3وتلفظ آنها را چاپ کند.
BEGIN
READLN(X);
CASE X OF
0:WRITELN('ZERO');
1:WRITELN('ONE');
2:WRITELN('TWO')
ELSE
WRITELN('ERROR');
END;
END.

بررسی محیط های کاری در لینوکس

در این درس به بررسی ورود به سیستم و بررسی کلی محیط های کـــــــــــــاری در لینوکس می پردازیم:
سیستم عامل لینوکس در ابتدا در حــــــالت متنی به وجود آمد، سپس دو رابط گرافیکی GNOME و KDE ساخته شدند. امروزه نیز رابط هـــــــــای گرافیکی بیشتری ساخته شده که از مهمترین آنها FVWM را می توان نام برد.
وقتی شما وارد لینوکس می شوید، می توانید محیط گرافیکی که می خواهید بــــه آن وارد شوید را انتخاب کنید. یعنی در پنجره ای که برای ورود به سیستم، از شمـــا نام حساب کاربری و کلمه عبور را می خواهد، منوهایی در بالای آن وجود دارد کــــه شما می توانید با استفاده از آن، ورود به محیط هـــــــــای گرافیکی (XWindows) را تنظیم کنید.
باز هم توصیه می شود که برای کـــارهای عادی خود، با حساب کاربری مدیریت سیستم (root) وارد نشوید. البته لینوکس هم این پیغام را به شما خواهد داد.
ورود به محیط متنی هم از چند راه میسر است. یعنی شما چه از داخل محیط های گرفیکی ( که بعدا توضیح داده خواهد شد ) و چه قبل از ورود به لینوکس، می توانید محیط متنی را برای کار برگزینید، به این ترتیب که اگر هنگام اجرای LiLo دکمه هـای Ctrl + x را فشار دهید، به طور مستقیم وارد محیط متنی می شوید.
از محیط متنی نترسید، اگرچه مثل محیط هــای گرافیکی ظاهری زیبا و راحت ندارند اما کار به وسیله آن راحت است. با این تفاوت که شما برای اجرای برنامه هـــــــا و کارهای دیگر در محیط های X (محیط های گرافیکی)، همه چیز را آماده روی صفحــه کار می بینید اما در محیط متنی، شما باید با استفاده از دستورات کـــــــاربردی یونیکس این کارها را انجام دهید. در ضمن، کارهای زیــــــــادی هستند که در محیط متنی قابل انجام می باشند.
پس در درس بعدی شما را با کــــــار در محیط متنی و دستورات اصلی و کاربردی یونیکس آشنا می کنیم. سپس به بررسی محیط هـــــــای گرافیکی GNOME و KDE می پردازیم.
برای اطلاعات بیشتر در مورد تاریخچه، ساختار و اخبار لینوکس به ســــــــــایت www.Linux.org مراجعه کنید.

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

بدون شک یکی از رقابتهای کشورهای پیشرفته، در زمینه کامپیوتر است و مــــــا هر روز شاهد پیشرفت این تکنولوژی عظیم هستیم. سیستم عامل ها و نرم افزارهای کامپیوتری نیز همزمان با این تحولات به پیش می روند.
سیستم عامل یکی از مهمترین اجزاء نرم افزاری یک کامپیوتراست.
سیستم عــــــــامل رابط بین نرم افزارها و عملکرد سخت افزار ها می باشد و نقش مدیریتی دارد.
تعدادی از سیستم عامل ها عبارتنداز:
BeOs , Windows , DOS , Unix , Linux ,...
دراینجا ما به سیستم عامل شگفت انگیز لینوکس می پردازیم.
لینوکس یک سیستم عامل رایگان، کدباز(OpenSource)، بسیار انعطـــــاف پذیر و با قابلیت های بالاست و روی هر کامپیوتری قابل نصب است. لینوکس در ســال 1991 توسط لینوس بندیک توروالدز خلق شد. اولین نسخه آن Linux 0.01 بود کــــه در همین سال در شبکه اینترنت قرار گرفت و نسخه هـــــای بعدی آن که رفع عیب می شدند، پیاپی می آمدند. یعنی خالق لینوکس، شخص لینوس بود امـــــــا روز به روز توسط برنامه نویسان گمنامی از سراسر جهـــــان تکمیل می شود و به برنامه های کاربردی آن افزوده می شود و این سیر هنوز هم ادامه دارد. تااینکه محیطهــــــــــــای گرافیکی لینوکس (XWindows) بوجود آمدند که سیل کاربران کــــــــــــامپیوتر به این سیستم عــــامل رو آوردند و امروزه هم تعداد کاربران لینوکس از مرز 15 میلیون نفر گذشته و روز به روز در حال افزایش است. نسخه هـــای مختلفی از لینوکس موجود است مثل: RedHat , Suse , Easy , Mandrake , ... .
که ما به بررسی RedHat Linux میپردازیم.
در ضمن شمـا می توانید لینوکس را روی یک پارتیشن جدا نصب کنید یعنی براحتی لینوکس و ویندوز را با هم روی کامپیوتر داشته باشید.
پس اگر انحصار و یکنواختی خسته شده اید و می خواهید سیستم عـــــاملی قابل تغییر داشته باشید، لینوکس را بر روی کامپیوتر خود نصب کرده و این دوره را حتمــــا بگذرانید

Intel، AMD و پردازنده های 64 بیتی

Bit چیست ؟

کلمه بیت مخفف عبارت binary digit است. اعداد دودویی یا باینری یعنی همان روشی است که یک کامپیوتر داده ها را با آن ذخیره کرده یا در قالب آن انتقال می دهد. یک بیت می تواند مقداری بین صفر یا یک را به خود بگیرد. اگر تعدادی از بیت را پشت سرهم ردیف کنیم ، به یک کد باینری می رسیم مثل 1001011000101 که می تواند بیانگر یک دستورالعمل ریاضی مثل جمع یا تفریق،‌یک محل خاص از حافظه جهت آدرس دهی، و یا یک داده مشخص مثلا عدد 12.456 باشد. یک پردازنده 32 بیتی، مثل پنتیوم قادر است بااستفاده از این رشته صفر و یک، تا عدد 2 به توان 32 را کد گذاری کند یا در اصطلاح، آن را به مبنای باینری ببرد. طبیعی است که این میزان برای یک پردازنده 64 بیتی به 2 به توان 64 می رسد و این بدان معنی است که یک پردازنده 64 بیتی، می تواند سقف بسیار بالاتری از اعداد را در واحد زمان پشتیبانی کند. بنابراین اگر یک پردازنده 32 بیتی بخواهد عددی بیشتر از2 به توان 32 را پردازش کند یا انتقال دهد، باید در دو سیکل زمانی این کار را انجام دهد که وقت بیشتری را نسبت به یک پردازنده 64بیتی صرف می کند. بدین ترتیب یک پردازنده 64 بیتی، صرف نظر از آن که چند سیکل زمانی در ثانیه بیشتر از یک پردازنده 32 بیتی دارد، در هر کدام از این سیکل های زمانی نیز قادر است دو برابر یک پردازنده 32 بیتی عمل پردازش را انجام دهد.
حافظه ، مسئله مهم تر
اما عامل دیگری که تحت تأثیر دامنه بیتی که پردازنده قرار می گیرد، میزان حافظه ای است که سیستم پشتیبانی می کند یا مورد دسترسی قرار می دهد. در پردازنده های 32 بیتی که با سیستم عامل های همگون 32 بیتی کار می کنند، تنها چهار گیگا بایت از فضای حافظه RAM قابل دسترسی است که حتی این مقدار هم توسط سیستم عامل های 32 بیتی ، اغلب به دو گیگا بایت کاهش می یابد. زیرا دو گیگا بایت دیگر از آن باید به برنامه های کاربردی جهت اجرا تخصیص داده شود. پردازنده پنتیوم 4 محصول اینتل و آتلون XP از AMD، از جمله همین پردازنده هایی هستند که علیرغم فرکانس بالا جهت اجرای تعداد بیشتری دستورالعمل در واحد زمان ، به دلیل عدم امکان دسترسی به مقادیر زیادتری از حافظه، گاه سرورهای محیط های Enterprise را با مشکل مواجه می کنند. در حالی که این مشکل ، در پردازنده های 64 بیتی البته به شرط اجرای برنامه های 64 بیتی تحت سیستم عامل های 64 بیتی با پشتیبانی از چند ترابایت فضای حافظه، برطرف شده است .
اینتل و AMD
شرکت AMD، با ساخت اولین مدل آتلون 64 بیتی که البته برخلاف نام آن ، قابلیت پشتیبانی 40 بیتی از حافظه را داشت و می توانست 136 گیگا بایت از فضای حافظه را آدرس دهی کند و اینتل با ساخت پردازنده Xeon سری DP با قابلیت اجرای 32و 64 بیتی و برخورداری از تکنولوژی hyper threading ، اولین گام را جهت ساخت پردازنده های 64 بیتی برداشتند. این پردازنده ها علاوه بر مهیا ساختن قابلیت دسترسی به میزان حافظه بیشتر برای سیستم عامل، به هر برنامه کاربردی قابل اجرا برروی آن سیستم عامل ، یک بلاک چهر گیگا بایتی از حافظه را جهت اجرا اختصاص می دهند. این توانایی جدید به نحو بسیار محسوسی ، کاربران برنامه های طراحی مهندسی و بسیاری از بانک های اطلاعاتی را با افزایش کارایی و سرعت اجرای برنام ها مواجه کرد. این پردازنده ها که طبق نظر سازندگانشان به طور کامل از سیستم عامل ها و برنامه های 32 بیتی پشتیبانی کرده و هیچ خللی را به دلیل ارتقا به وضعیت 64 بیتی، در برنامه های قبلی وارد نمی کردند و به قول خودشان سازگار باقبل بودند، تنها در صورت اجرای سیستم عامل های 64 بیتی و همچنین اجرای برنامه های 64 بیتی، می توانستند قدرت خودشان را به نمایش بگذراند. در حالی که در زمان اجرای 32 بیتی بر روی سیستم عامل های 32 بیتی، تنها چیزهایی که می توانند عاید این محیط های قدیمی نماینده، عبارت است از:
1- استفاده ازفرکانس بالاتر از جهت اجرای تعداد بیشتری دستورالعمل در واحد زمان
2- استفاده از سطوح بالاتر cache جهت افزایش دسترسی به اطلاعات
3- استفاده از سیلیکون هایی با کیفیت بالاتر و دارای تعداد ترانزیستور بیشتر باز هم در راه افزایش سرعت.
به هر روی هر دو شرکت سرشناس تولید کنند پردازنده های 64 بیتی برای کامپیوتری x86 مدعی ساخت پردازنده های مذکور با کیفیت بالاتر بوده و در واقع هر دو ادعای پیشتازی در این عرصه را دارند.
راه حل های اینتل
این راه حل ها شامل سه دسته پردازنده بعد از ارائه Xeon DP و سه مدل پردازنده ایتانیوم به شرح زیر است :
1- پردازنده های سری 64bit xeon
این سری از پردازنده های اینتل با قدرت انعطاف بالا و دو مگا بایت cache لایه سه ، به عنوان محبوب ترین پردازنده 64 بیتی برای سرورها شناخته شده اند. ضمن اینکه قادرند هم برنامه های 64 بیتی و هم برنامه های 32 بیتی را با کارایی بالا و با استفاده از حافظه های DDR2 و خطوط حامل PCI Express اجرا کنند و در نتیجه کارایی سیستم را تا حد 50 درصد بالاتر از xeonهای قدیمی تر32 بیتی ، مثل پردازنده xeon DP 3.2 گیگا هرتز ببرند. این پردازنده ها در وب سرورها و ایمیل سرورها کاربرد زیادی دارند.
2- پردازنده های سری 64bit xeon MP
قدرتمندترین و سریع ترین پردازنده با نام xeon است و با قدرت بالای دسترسی به حافظه، هشت مگا بایت cache لایه سه و وجود فناوری DBS، بهترین انتخاب برای سرورهای لایه واسط ، یعنی همان Application Server یا سرور مربوط به بانک های اطلاعاتی با حجم داده و پردازش بالا می باشد. این سرور در کاربردهای Enterprise، مثل سیستم های تجاری ERP و BI کاربرد بسیار مناسبی دارد .
3- 64bit xeon workstation
همان گونه که از نام آن برمی آید، این پردازنده قادر است با استفاده از قابلیت هایی مثل NetBurst، PCI Express، Cache لایه دو، و فناوری hyper threading، برنامه های 32 و 64 بیتی، خصوصا برنامه های طراحی مهندسی، گرافیک و امثال آن را با کارایی و سرعت بالا اجرا نماید.
4- Itanium2
قدرتمندترین و با ثبات ترین پردازنده ساخت اینتل است . این پردازنده که خود در مدل های DP، MP و Low Voltage به بازار ارائه شده است ، با قابلیت نه مگا بایت فضای cache لایه سه، بالاترین کارایی و سرعت را برای سرورهای لایه واسط ، بانک های اطلاعاتی ، راه حل های ERP، BI، HPC، و انواع سیستم های مدیریتی پیچیده به ارمغان می آورد.
پردازنده های سری ایتانیوم، آلتوناتیوی قوی برای سیستم های اطلاعاتی موجود برروی پردازنده های RISC ساخت آی بی ام بوده و با قیمت بسیار پایین تر از سیستم های MainFrame، رقیبی سرسخت برای آن به حساب می آیند.
راه حل AMD
AMD برای پشتیبانی از فناوری پردازش های 64 بیتی ، چندین مدل پردازنده 64 بیتی آتلون، اپترون، و توریون را ارائه کرده است . که در ادامه به بررسی اجمالی آن ها پرداخته می شود.
1- AMD Athlon64
انواع و اقسام مختلفی از آتلون سری 64 برای اجرای برنامه های 64 و 32 بیتی با کارایی بالا ساخته شده است . این پردازنده ها که با فناوری های قابل رقابت مشابه آنچه که در اینتل برای ساخت پردازنده های زئون ساخته شده است، ارائه شده اند، به کاربران کامپیوترهای دسکتاپ اجازه می دهد برنامه های کاربردی ای که به سرعت بالا دسترسی سریع به حجم بالای حافظه نیاز دارند را با کارایی بالایی اجرا نمایند. برنامه های گرافیکی و مالتی مدیا، بازی های سه بعدی ، ویرایش تصاویر، فیلم، موسیقی، و به طور کلی Applicationهای مربوط به کاربران نهایی ،‌بهترین بهره را از این پردازنده ها می برند. این پردازنده در چند مدل مختلف ارائه شده که از مدل FX آن برای کاربردهای دسکتاپ و از مدل MP برای سرورها استفاده می شود.
2- Opteron
AMD، پردازنده های سری اپترون را در قالب و همپای با xeonهای 64 بیتی و تا حدودی پردازنده های گران قیمت تر ایتانیوم ساخته است. این پردازنده که به گفته AMD با ترکیب فاکتورهای مهمی چون سازگاری، کارایی ، قابلیت اعتماد، و قیمت نسبتا پایین رقابتی ، پا به عرصه وجود گذاشته، تاکنون در قالب چهار مدل مختلف سری 1-8wag و سری های 200،100 و 800 به بازار عرضه شده است. این پردازنده قادر است تا 256 ترابایت فضای حافظه را مورد دسترسی قرار دهد و با استفاده از توان مصرفی نسبتا پایین 55 وات برای سری HE و 30 وات برای سری EE از هدر رفتن توان مصرفی پردازنده و درنهایت کل سیستم جلوگیری کند. پردازنده های آتلون و اپترون 64 بیتی تاکنون بارها از طرف مجامع مختلف به عنوان مقرون به صرفه ترین راه حل برای کاربردهای دسکتاپ و تا حدودی Enterprise با حفظ هردو فاکتور کارایی بالا و قیمت پایین شناخته شده است .
3- Turion
این پردازنده به منظور ایجاد امکان سوارکردن سیستم عامل های 32 و 64 بیتی برروی کامپیوترهای نوت بوک با تکنولوژی Mobile طراحی وساخته شده است. این پردازنده با وزن بسیارکم، مصرف انرژی پایین، و ایجاد حرارت محدود با فناوری بی سیم بسیار سازگار بوده و می تواند با کارایی بسیار بالاتری نسبت به پردازنده های معمولی دستگاه های مبتنی بر تکنولوژی موبایل و بی سیم، به اجرای برنامه های طراحی شده برای این محیط ها بپردازد. سیستم عامل، کلیه برنامه های صوتی و تصویری ، بازی ها و امثال آن از مزایای افزایش سرعت با استفاده از این پردازنده 64بیتی بهره مند می شوند.

پایگاه داده ها چیست؟

دادِگان (پایگاه داده‌ها یا بانک اطلاعاتی) به مجموعه‌ای از اطلاعات با ساختار منظم و سامانمند گفته می‌شود. این پایگاه‌های اطلاعاتی معمولاً در قالبی که برای دستگاه‌ها و رایانه‌ها قابل خواندن و قابل دسترسی باشند ذخیره می‌شوند. البته چنین شیوه ذخیره‌سازی اطلاعات تنها روش موجود نیست و شیوه‌های دیگری مانند ذخیره‌سازی ساده در پرونده‌ها نیز استفاده می‌گردد. مسئله‌ای که ذخیره‌سازی داده‌ها در دادگان را موثر می‌سازد وجود یک ساختار مفهومی است برای ذخیره‌سازی و روابط بین داده‌ها است.
پایگاه داده در اصل مجموعه‌ای سازمان یافته از اطلاعات است.این واژه از دانش رایانه سرچشمه می‌‌گیرد ،اما کاربر وسیع و عمومی نیز دارد، این وسعت به اندازه‌ای است که مرکز اروپایی پایگاه داده (که تعاریف خردمندانه‌ای برای پایگاه داده ایجاد می‌‌کند) شامل تعاریف غیر الکترونیکی برای پایگاه داده می‌‌باشد. در این نوشتار به کاربرد های تکنیکی برای این اصطلاح محدود می‌‌شود.
یک تعریف ممکن این است که: پایگاه داده مجموعه‌ای از رکورد های ذخیره شده در رایانه با یک روش سیستماتیک (اصولی) مثل یک برنامه رایانه‌ای است که می‌‌تواند به سوالات کاربر پاسخ دهد. برای ذخیره و بازیابی بهتر، هر رکورد معمولا به صورت مجموعه‌ای از اجزای داده‌ای یا رویداد ها سازماندهی می‌‌گردد. بخش های بازیابی شده در هر پرسش به اطلاعاتی تبدیل می‌‌شود که برای اتخاذ یک تصمیم کاربرد دارد. برنامه رایانه‌ای که برای مدیریت و پرسش و پاسخ بین پایگاه‌های داده‌ای استفاده می‌‌شود را مدیر سیستم پایگاه داده‌ای یا به اختصار (DBMS) می‌‌نامیم. خصوصیات و طراحی سیستم های پایگاه داده‌ای در علم اطلاعات مطالعه می‌‌شود.
مفهوم اصلی پایگاه داده این است که پایگاه داده مجموعه‌ای از رکورد ها یا تکه هایی از یک شناخت است.نوعا در یک پایگاه داده توصیف ساخت یافته‌ای برای موجودیت های نگه داری شده در پایگاه داده وجود دارد: این توصیف با یک الگو یا مدل شناخته می‌‌شود. مدل توصیفی، اشیا پایگاه‌های داده و ارتباط بین آنها را نشان می‌‌دهد. روش های متفاوتی برای سازماندهی این مدل ها وجود دارد که به آنها مدل های پایگاه داده گوییم. پرکاربرد‌ترین مدلی که امروزه بسیار استفاده می‌‌شود، مدل رابطه‌ای است که به طور عام به صورت زیر تعریف می‌‌شود: نمایش تمام اطلاعاتی که به فرم جداول مرتبط که هریک از سطر ها و ستونها تشکیل شده است(تعریف حقیقی آن در علم ریاضیات برسی می‌‌شود). در این مدل وابستگی ها به کمک مقادیر مشترک در بیش از یک جدول نشان داده می‌‌شود. مدل های دیگری مثل مدل سلسله مراتب و مدل شبکه‌ای به طور صریح تری ارتباط ها را نشان می‌‌دهند.
در مباحث تخصصی تر اصتلاح دادگان یا پایگاه داده به صورت مجموعه‌ای از رکورد های مرتبط با هم تعریف می‌‌شود. بسیاری از حرفه‌ای ها مجموعه‌ای از داده هایی با خصوصیات یکسان به منظور ایجاد یک پایگاه داده‌ای یکتا استفاده می‌‌کنند.

معمولا DBMS ها بر اساس مدل هایی که استفاده می‌‌کنند تقسیم بندی می‌‌شوند: ارتباطی،شی گرا، شبکه‌ای و امثال آن. مدل های داده‌ای به تعیین زبانهای دسترسی به پایگاه‌های داده علاقه مند هستند. بخش قابل توجهی از مهندسی DBMS مستقل از مدل های می‌‌باشد و به فاکتور هایی همچون اجرا، همزمانی،جامعیت و بازیافت از خطاهای سخت افزاری وابسطه است.در این سطح تفاوت های بسیاری بین محصولات وجود دارد.
موارد زیر به صورت خلاصه شرح داده می شود:
•۱ تاریخچه پایگاه داده
•۲ انواع دادگان ها
•۳ مدل های پایگاه داده
۳.۱ مدل تخت
۳.۲ مدل شبکه ای(Network)
۳.۳ مدل رابطه ای
۳.۴ پایگاه داده‌های چند بعدی
۳.۵ پایگاه داده‌های شیء
•۴ ویژگی‌های سیستم مدیریت پایگاه داده‌ها
•۵ فهرست سیستم‌های متداول مدیریت دادگان

1- تاریخچه پایگاه داده
اولین کاربردهای اصطلاح پایگاه داده به June 1963 باز می‌گردد، یعنی زمانی که شرکت System Development Corporation مسئولیت اجرایی یک طرح به نام "توسعه و مدیریت محاسباتی یک پایگاه داده‌ای مرکزی" را بر عهده گرفت. پایگاه داده به عنوان یک واژه واحد در اوایل دهه 70 در اروپا و در اواخر دهه 70 در خبر نامه‌های معتبر آمریکایی به کار رفت.(بانک داده‌ای یا Databank در اوایل سال 1966 در روزنامه واشنگتن کار رفت)
تصویر:اولین سیستم مدیریت پایگاه داده در دهه 60 گسترش یافت. از پیشگامان این شاخه چارلز باخمن می‌‌باشد. مقالات باخمن این را نشان داد که فرضیات او کاربرد بسیار موثرتری برای دسترسی به وسایل ذخیره سازی را محیا می‌‌کند. در آن زمانها پردازش داده بر پایه کارت های منگنه و نوار های مغناطیسی بود که پردازش سری اطلاعات را مهیا می‌‌کند. دو نوع مدل داده‌ای در آن زمانها ایجاد شد:CODASYL موجب توسعه مدل شبکه‌ای شدکه ریشه در نظریات باخمن داشت و مدل سلسله مراتبی که توسط North American Rockwell ایجاد شد و بعدا با اقباس از آن شرکت IBM محصولIMS را تولید نمود.
مدل رابطه‌ای توسط E. F. Codd در سال 1970 ارائه شد.او مدل های موجود را مورد انتقاد قرار می‌‌داد. برای مدتی نسبتا طولانی این مدل در مجامع علمی مورد تایید بود. اولین محصول موفق برای میکرو کامپیوتر ها dBASE بودکه برای سیستم عامل هایCP/M و PC-DOS/MS-DOS ساخته شد. در جریان سال 1980 پژوهش بر روی مدل توزیع شده (distributed database) و ماشین های دادگانی (database machines) متمرکز شد، اما تاثیر کمی بر بازار گذاشت. در سال 1990 توجهات به طرف مدل شی گرا(object-oriented databases) جلب شد. این مدل جهت کنترل داده‌های مرکب لازم بود و به سادگی بر روی پایگاه داده‌های خاص، مهندسی داده(شامل مهندسی نرم افزار منابع) و داده‌های چند رسانه‌ای کار می‌‌کرد.

در سال 2000 نوآوری تازه‌ای رخ داد و دادگان اکس‌ام‌ال (XML) به وجود آمد. هدف این مدل از بین بردن تفاوت بین مستندات و داده ها است و کمک می‌‌کند که منابع اطلاعاتی چه ساخت یافته باشند یا نه در کنار هم قرار گیرند.


2- انواع دادگان ها
دادگان‌ها از نظر ساختار مفهومی و شیوه‌ای رفتار با داده‌ها بر دو نوع هستند :
1.دادگان رابطه‌ای
2.دادگان شی‌گرا


3- مدل های پایگاه داده
شگرد های مختلفی برای مدل های داده‌ای وجود دارد. بیشتر سیستم های پایگاه داده‌ای هر چند که طور معمول بیشتر از یک مدل را مورد حمایت قرار می‌‌دهند، حول یک مدل مشخص ایجاد شده اند. برای هر یک از الگوهای های منطقی (logical model) اجراهای فیزیکی مختلفی قابل پیاده شدن است و سطوح کنترل مختلفی در انطباق فیزیکی برای کاربران محیا می‌‌کند. یک انتخاب مناسب تاثیر موثری بر اجرا دارد. مثالی از موارد الگوی رابطه‌ای (relational model) است: همه رویدادهای مهم در مدل رابطه‌ای امکان ایجاد نمایه‌هایی که دسترسی سریع به سطرها در جدول را می‌‌دهد،فراهم می‌‌شود.

یک مدل داده‌ای تنها شیوه ساختمان بندی داده ها نیست بلکه معمولا به صورت مجموعه‌ای از عملیات ها که می‌‌تواند روی داده ها اجرا شود تعریف می‌‌شوند. برای مثال در مدل رابطه‌ای عملیاتی همچون گزینش (selection)، طرح ریزی (projection) و اتصال (join) تعریف می‌‌گردد.

۳.۱ مدل تخت
مدل تخت یا جدولی (flat (or table) model ) تشکیل شده است از یک آرایه دو بعدی با عناصر داده‌ای که همه اجزای یک ستون به صورت داده‌های مشابه فرض می‌‌شود و همه عناصر یک سطر با هم در ارتباط هستند. برای نمونه در ستون هایی که برای نام کاربری و رمز عبور در جزئی از سیستم های پایگاه داده‌ای امنیتی مورد استفاده قرار می‌‌گیرد هر سطر شامل رمز عبوری است که مخصوص یک کاربر خاص است. ستون های جدول که با آن در ارتباط هستند به صورت داده کاراکتری، اطلاعات زمانی، عدد صحیح یا اعداد ممیز شناور تعریف می‌‌شوند. این مدل پایه برنامه‌های محاسباتی(spreadsheet) است.

پایگاه داده ها با فایل های تخت به سادگی توسط فایل های متنی تعریف می‌‌شوند. هر رکورد یک خط است و فیلد ها به کمک جدا کننده هایی از هم مجزا می‌‌شوند. فرضا به مثال زیر دقت کنید:
id name team
1 Amy Blues
2 Bob Reds
3 Chuck Blues
4 Dick Blues
5 Ethel Reds
6 Fred Blues
7 Gilly Blues
8 Hank Reds
داده‌های هر ستون مشابه هم است ما به این ستونها فیلد ها (fields) گوییم. و هر خط را غیر از خط اول یک رکورد(record) می‌‌نامیم. خط اول را که برخی پایگاه‌های داده‌ای آنرا ندارند رکورد برچسب(field labels) گوییم. هر مقدار داده‌ای اندازه خاص خود را دارد که اگر به آن اندازه نرسد می‌‌توان از کاراکنر فاصله برای این منظور استفاده کرد اما این مسئله مخصوصا زمانی که بخواهیم اطلاعات را بر روی کارت های منگنه قرار دهیم مشکل ساز خواهد شد. امروزه معمولا از نویسه TAB برای جداسازی فیلد ها و کاراکتر خط بعد برای رکورد بعدی استفاده می‌‌کنیم. البته شیوه‌های دیگری هم وجود دارد مثلا به مثال زیر دقت کنید:
"1","Amy","Blues"
"2","Bob","Reds"
"3","Chuck","Blues"
"4","Dick","Blues"
"5","Ethel","Reds"
"6","Fred","Blues"
"7","Gilly","Blues"
"8","Hank","Reds"
این مثال از جدا کننده کاما استفاده می‌‌کند.در این نوع مدل تنها قابلیت حذف،اضافه،دیدن و ویرایش وجود دارد که ممکن است کافی نباشد.Microsoft Excel این مدل را پیاده سازی می‌کند.

۳.2 مدل شبکه ای(Network)
در سال 1969 و در کنفرانس زبانهای سیستم های داده‌ای (CODASYL) توسطCharles Bachman ارائه شد. در سال 1971 مجددا مطرح شد و اساس کار پایگاه داده‌ای قرار گرفت و در اوایل دهه 80 با ثبت آن درسازمان بین المللی استانداردهای جهانی یا ISO به اوج رسید.

مدل شبکه‌ای (database model) بر پایه دو سازه مهم یعنی مجموعه ها و رکورد ها ساخته می‌‌شود و برخلاف روش سلسله مراتبی که از درخت استفاده می‌‌کند، گراف را به کار می‌‌گیرد. مزیت این روش بر سلسله مراتبی این است که مدل های ارتباطی طبیعی بیشتری را بین موجودیت ها فراهم می‌‌کند. الی رغم این مزیت ها به دو دلیل اساسی این مدل با شکست مواجه شد: اول اینکه شرکت IBM با تولید محصولات IMS و DL/I که بر پایه مدل سلسله مراتبی است این مدل را نادیده گرفت. دوم اینکه سرانجام مدل رابطه‌ای (relational model) جای آن را گرفت چون سطح بالاتر و واضح تر بود. تا اوایل دهه 80 به علت کارایی رابط های سطح پایین مدل سلسله مراتبی و شبکه‌ای پیشنهاد می‌‌شد که بسیاری از نیاز های آن زمان را برطرف می‌‌کرد. اما با سریعتر شدن سخت افزار به علت قابلیت انعطاف و سودمندی بیشتر سیستم های رابطه‌ای به پیروزی رسیدند.

رکورد ها در این مدل شامل فیلد هایی است( ممکن است همچون زبان کوبول (COBOL) به صورت سلسله مراتب اولویتی باشد). مجموعه ها با ارتباط یک به چند بین رکورد ها تعریف می‌‌شود: یک مالک و چند عضو. عملیات های مدل شبکه‌ای از نوع هدایت کننده است: یک برنامه در موقعیت جاری خود باقی می‌‌ماند و از یک رکورد به رکورد دیگر می‌‌رود هر گاه که ارتباطی بین آنها وجود داشته باشد. معمولا از اشاره‌گرها(pointers) برای آدرس دهی مستقیم به یک رکورد در دیسک استفاده می‌‌شود. با این تکنیک کارایی بازیابی اضافه می‌‌شود هر چند در نمایش ظاهری این مدل ضروری نیست .

۳.3 مدل رابطه ای
مدل رابطه ای (relational model) در یک مقاله تحصیلی توسط E. F. Codd در سال 1970 ارائه گشت. این مدل یک مدل ریاضیاتی است که با مفاهیمی چون مستندات منطقی (predicate logic) و تئوری مجموعه ها (set theory) در ارتباط است. محصولاتی همچون اینگرس،اراکل، DB2 وسرور اس‌کیوال (SQL Server) بر این پایه ایجاد شده است. ساختار داده ها در این محصولات به صورت جدول است با این تفاوت که می‌‌تواند چند سطر داشته باشد. به عبارت دیگر دارای جداول چند گانه است که به طور صریح ارتباطات بین آنها بیان نمی‌شود و در عوض کلید هایی به منظور تطبیق سطر ها در جداول مختلف استفاده می‌‌شود. به عنوان مثال جدول کارمندان ممکن است ستونی به نام "موقعیت" داشته باشد که کلید جدول موقعیت را با هم تطبیق می‌‌دهد.

۳.4 پایگاه داده‌های چند بعدی
پایگاه داده‌های رابطه‌ای توانست به سرعت بازار را تسخیر کند، هرچند کارهایی نیز وجود داشت که این پایگاه داده‌ها نمی‌توانست به خوبی انجام دهد. به ویژه به کارگیری کلیدها در چند رکورد مرتبط به هم و در چند پایگاه داده مشترک، کندی سیستم را موجب می‌شد. برای نمونه برای یافتن نشانی کاربری با نام دیوید، سیستم رابطه‌ای باید نام وی را در جدول کاربر جستجو کند و کلید اصلی (primary key ) را بیابد و سپس در جدول نشانی‌ها، دنبال آن کلید بگردد. اگر چه این وضعیت از نظر کاربر، فقط یک عملیات محسوب، اما به جستجو درجداول نیازمند است که این کار پیچیده و زمان بر خواهد بود. راه کار این مشکل این است که پایگاه داده‌ها اطلاعات صریح درباره ارتباط بین داده‌ها را ذخیره نماید. می‌توان به جای یافتن نشانی دیوید با جستجو ی کلید در جدول نشانی، اشاره‌گر به داده‌ها را ذخیره نمود. در واقع، اگر رکورد اصلی، مالک داده باشد، در همان مکان فیزیکی ذخیره خواهد شد و از سوی دیگر سرعت دسترسی افزایش خواهد یافت.
چنین سیستمی را پایگاه داده‌های چند بعدی می‌نامند. این سیستم در هنگامی که از مجموعه داده‌های بزرگ استفاده می‌شود، بسیار سودمند خواهد بود. از آنجاییکه این سیستم برای مجموعه داده‌های بزرگ به کار می‌رود، هیچگاه در بازار به طور مستقیم عمومیت نخواهد یافت.

۳.5 پایگاه داده‌های شیء
اگر چه سیستم‌های چند بعدی نتوانستند بازار را تسخیر نمایند، اما به توسعه سیستم‌های شیء منجر شدند. این سیستم‌ها که مبتنی بر ساختار و مفاهیم سیستم‌های چند بعدی هستند، به کاربر امکان می‌دهند تا اشیاء را به طور مستقیم در پایگاه داده‌ها ذخیره نماید. بدین ترتیب ساختار برنامه نویسی شیء گرا (object oriented ) را می‌توان به طور مستقیم و بدون تبدیل نمودن به سایر فرمت‌ها، در پایگاه داده‌ها مورد استفاده قرار داد. این وضعیت به دلیل مفاهیم مالکیت (ownership) در سیستم چند بعدی، رخ می‌دهد. در برنامه شیء گرا (OO)، یک شیء خاص "مالک " سایر اشیاء در حافظه است، مثلا دیوید مالک نشانی خود می‌باشد. در صورتی که مفهوم مالکیت در پایگاه داده‌های رابطه‌ای وجود ندارد.


4- ویژگی‌های سیستم مدیریت پایگاه داده‌ها
پس از این مقدمه به توصیف سیستم مدیریت پایگاه داده‌ها می‌پردازیم. سیستم مدیریت پایگاه داده‌ها، مجموعه‌ای پیچیده از برنامه‌های نرم‌افزاری است که ذخیره سازی و بازیابی داده‌های (فیلدها، رکوردها و فایل‌ها) سازمان را در پایگاه داده‌ها، کنترل می‌کند. این سیستم، کنترل امنیت و صحت پایگاه داده‌ها را نیز بر عهده دارد. سیستم مدیریت پایگاه داده‌ها، درخواست‌های داده را از برنامه می‌پذیرد و به سیستم عامل دستور می‌دهد تا داده‌ها ی مناسب را انتقال دهد. هنگامی که چنین سیستمی مورد استفاده قرار می‌گیرد، اگر نیازمندیهای اطلاعاتی سازمانی تغییر یابد، سیستم‌های اطلاعاتی نیز آسانتر تغییر خواهند یافت. سیستم مذکور از صحت پایگاه داده‌ها پشتیبانی می‌کند. بدین ترتیب که اجازه نمی‌دهد بیش از یک کاربر در هر لحظه، یک رکورد را به روز رسانی کند. این سیستم رکوردهای تکراری را در خارج پایگاه داده‌ها نگاه می‌دارد. برای مثال، هیچ دو مشترک با یک شماره مشتری، نمی‌توانند در پایگاه داده‌ها وارد شوند. این سیستم روشی برای ورود و به روز رسانی تعاملی پایگاه داده‌ها فراهم می‌آورد. یک سیستم اطلاعات کسب و کار از موضوعاتی نظیر (مشتریان، کارمندان، فروشندگان و غیره) و فعالیت‌هایی چون (سفارشات، پرداخت‌ها، خریدها و غیره) تشکیل شده است. طراحی پایگاه داده‌ها، فرایند تصمیم گیری درباره نحوه سازماندهی این داده‌ها در انواع رکوردها و برقراری ارتباط بین رکوردهاست.سیستم مدیریت پایگاه داده‌ها می‌تواند ساختار داده‌ها و ارتباط آنها را در سازمان به طور اثر بخش نشان دهد. سه نوع مدل متداول سازمانی عبارتند از: سلسله مراتبی، شبکه‌ای و رابطه‌ای. یک سیستم مدیریت پایگاه داده‌ها ممکن است یک، دو یا هر سه روش را فراهم آورد. سرورهای پایگاه داده‌ها، کامپیوترهایی هستند که پایگاه داده‌های واقعی را نگاه می‌دارند و فقط سیستم مدیریت پایگاه داده‌ها و نرم‌افزار مربوطه را اجرا می‌کنند. معمولا این سرورها رایانه‌های چند پردازنده‌ای با آرایه‌های دیسک RAID برای ذخیره سازی می‌باشند.


5- فهرست سیستم‌های متداول مدیریت دادگان
معروف‌ترین این نرم‌افزارهای مدیریت دادگان‌ها می‌توان به چند نمونه زیر اشاره کرد:

1.Oracle
2.Microsoft SQL Server
3.MySQL
4.PostregSQL
5.DB2
6.Microsoft Access
واژه دادگان از برابرنهاده‌های فرهنگستان زبان فارسی می‌باشد.

ایجاد دیسکت بوت لینوکس

دلائل چندی وجود دارد که یک کاربر میبایست یک دیسکت بوت لینوکس برای خود ایجاد و از آن استفاده و آن را نگهداری نماید . بعنوان مثال اگر سیستم شما توانائی بوت از روی سی دی را نداشته و یا شما بخواهید عمل نصب لینوکس را بجای سی دی از روی درایو سخت (هارد دیسک) ویا درایو شبکه انجام دهید و یا درصورتی که سیستم لینوکس شما پس از نصب بدلیل آسیب دیدگی بوت لودر نتواند بدرستی بالا بیاید باید یک عدد دیسکت بوت لینوکس مناسب با نوع عملی که میخواهید انجام دهید بسازید و آنرا در موقع لزوم در اختیار داشته باشید .

ملاحظه میکنید که انواع دیسکت بوت لینوکس با توجه به نوع کارائی متفاوت است ولی روش ایجاد همه انواع آن تقریبا مشابه میباشد .

نخستین چیزی که برای ایجاد یک دیکت بوت لینوکس ضروری است وجود فایل image حاوی اطلاعات لازم برای ساخت دیسکت میباشد .

فایلهای image‌ ضروری برای ایجاد انواع دیسکت بوت لینوکس عبارتند از :

1 - cdrom.img‌ این فایل برای ایجاد دیسکت بوت برای نصب لینوکس از روی هارد دیسک یا سی دی رام در مواقعی که بوت از طریق سی دی مقدور نباشد بکار میرود .

2 - network.img‌ این فایل برای ایجاد دیسکت بوت برای نصب لینوکس از روی درایو شبکه بکار میرود .

3 - pcmcia.img این فایل برای ایجاد دیسکت بوت برای نصب لینوکس از طریق یک ابزار با رابط pcmcia‌ مثل انواع سی دی رام یاکارت شبکه با این مشخصات بکار میرود .

نکته : چون امروزه کارتهای pcmcia با تکنولوژی کارتهای شبکه جایگزین شده در صورت عدم کارائی میتوان از فایل network.img‌ استفاده کرد .

4 - hd.img این فایل برای ایجاد دیسکت بوت برای نصب لینوکس از طریق هارد دیسک بکار میرود .

5 - hdcdrom_usb.img این فایل برای ایجاد دیسکت بوت برای نصب لینوکس از طریق رسانه های مبتنی بر پورت usb بکار میرود .



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

باید دانست که دیسکت بوت لینوکس را میتوان هم در محیط ویندوز (بوسیله برنامه های کمکی موجود برروی توزیع لینوکس مورد استفاده در سطح DOS ) و هم در محیط لینوکس ایجاد نمود که در اینجا سعی میکنم به توضیح مختصر هر دو روش بپردازم .

الف ) ایجاد دیسکت بوت لینوکس در محیط ویندوز :

چون اغلب کاربران جدید لینوکس با ویندوز آشنائی قبلی داشته اند برنامه های کاربردی چندی برای ایجاد دیسکت بوت در محیط ویندوز نوشته شده که یکی از مهمترین آنها برنامه گرافیکی RawWrite میباشد . این برنامه که یک فایل اجرائی تنهاست عموما در سی دی اول توزیع لینوکس و در شاخه dosutils‌ قرار دارد ودر رابط گرافیکی خود محل فایل image ‌ و درایو فلاپی مقصد را پرسیده و به سهولت کار ایجاد دیسکت بوت لینوکس را انجام میدهد .

ب ) ایجاد دیسکت بوت لینوکس در محیط گنو / لینوکس :

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

1 - یک پنچره کنسول متنی یا shell فرمان باز کنید .



2 - با دستور su‌ و سپس وارد کردن رمز عبور بصورت کاربر ریشه وارد سیستم شوید .



3 - اولین سی دی توزیع لینوکس را در سی دی درایو قرار داده و آنرا به سیستم متصل یا mount‌ نمائید . (روش mount کردن سی دی در درسهای گذشته گفته شد لیکن باید دانست که اغلب توزیعهای جدید لینوکس این کار را بطورت خود کار انجام میدهند) .



3 - یک فلاپی خالی در فلاپی درایو قرار داده و دستور زیر را تایپ کنید :



# dd if=/mnt/cdrom/images/cdrom.img of=/dev/fd0 bs=512

همانطوریکه می بینید با اجرای این دستور فایل ایمیج موجود در مسیر /mnt/cdrom/images/cdrom.img خوانده شده و بر روی فلاپی درایو اول سیستم یعنی fd0‌ دیسکت بوت لینوکس ایجاد میگردد .

بدیهی است که آدرس فلاپی درایو دوم سیستم در صورت نصب بودن /dev/fd1‌ خواهد بود .

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

کلیدهای حافظه USB در رویندوز ویستا

امکان افزودن کلید‌های USB به ویندوز ویستا سرعت عمل این سیستم عامل را بالا می‌‏برد.

به گزارش بخش خبر شبکه فن آوری اطلاعات ایران ، از ایلنا, ‌‏شرکت مایکروسافت اعلام کرد: ویندوز ویستا به کاربران این امکان را می‌‌‏دهد که با استفاده از کلیدهای حافظه USB به این سیستم عامل حافظه جانبی اضافه کند.
این ویژگی بخش از یک فناوری به اسم SUPERFETDN است که برای افزایش سرعت عمل کاربر در نسل جدید ویندوز طراحی شده است.
این فناوری داده‌‏ها و نرم‌‏افزارهای کاربردی را که کاربر در ماه‌‏های گذشته به آنها دسترسی داشته کنترل می‌‏کند و آنها را پیشاپیش در حافظه خود ذخیره می‌‏کند.
در ویندوزهای موجود, این نرم‌‏افزار برنامه‌‏ها و داده‌‏ها را تنها هنگامی که کاربر بخواهد بارگذاری می‌‏کند.
این کار زمان‌‏بر است؛ چون اولین بار که یک برنامه کاربردی بعد از REBOOT کردن سیستم راه‌‏اندازی می‌‏شود,‌‏ ویندوز مجبور است نه تنها خود برنامه بلکه درایورها و دیگر برنامه‌‏های کمکی و جانبی را نیز بارگذاری کند.
جیم آلچین، از مدیران مایکروسافت در این باره می‌‏گوید: اگر سیستم از حافظه بالایی برخوردار باشد SUPERFECH عالی عمل می‌‏کند؛ اما مایکروسافت برای سیستم‌‏هایی که حافظه محدودی دارند نیز راه چاره را اندیشیده است و آن امکان استفاده از USB است.

ترفندهای رجستری ویندوز برای خارج نمودن برنامه ازحافظه

شاید تا حالا به این مشکل برخورد کرده باشید که وقتی می خواهید از ویندوز خارج بشوید پیغامی مبنی براینکه آیا می خواهید فلان برنامه در حال اجرا را از حافظه خارج کنید یا نه؟روی صفحه نشان داده می شود.
برای اینکه ویندوز به طور اتوماتیک چنین برنامه هایی را از حافظه بیرون بیاورد، از طریق برنامه Run عبارت regedit را تایپ کرده و وارد رجستری ویندوز بشوید. آدرس زیر را دنبال کنید :
[ HKEY_USER.DEFAULTControl PanelDesktop]
حالا یک مقدار رشته ای به نام AutoEndTasks بسازید و به آن مقدار ۱ را بدهید.
ترفند دومی اینه که برنامه های خاطی را به سرعت از حافظه ویندوز خارج کنید. زمانی که کلیدهای ‍Ctrl+Alt+Delete را برای خارج کردن یک برنامه خاطی فشار می دهید و یا زمانی که می خواهید از ویندوز خارج شوید و ویندوز میخواهد یک برنامه خاطی را از حافظه خارج سازد پیغام را به برنامه حاطی می فرستد و 20 ثانیه صبر می کند تا برنامه جواب دهد و در صورتی که جوابی دریافت نکند برنامه را از حافظه خارج می کند. برای اینکه زمان انتظار را کاهش دهیم در رجستری ویندوز آدرس زیر را دنبال کنید:
[ HKEY_CURRENT_USERControl PanelDesktop]
یک مقدار رشته ای به نام WaitToKillAppTimeout مشاهده خواهید کرد که حاوی 20000 میلی ثانیه (20 ثانیه) است. این مقدار را به هر زمانی که دوست دارید تغییر دهید و توجه داشته باشید که زمان بر حسب میلی ثانیه است.

Windows Or Linux ?

در زمینه میزبانی وب همواره 2 سیستم عامل مهم وجود داشته است: ویندوز و یونیکس (لینوکس). مهمترین سوالی که همواره در این زمینه از ما میشود آن است که کدام سیستم برای سایت ما مناسب است؟ ویندوز یا لینوکس؟ پاسخ ما با توجه به هدف شما از داشتن وب سایت و برنامه ای که برای آن سایت در نظر دارید متفاوت است. ما اکثرا به مشتریان خود توصیه میکنیم که برای شروع با لینوکس شروع کنند و اگر در آینده نیاز به گسترش کار و استفاده از قابلیتهای ویندوز بود، سایت خود را به ویندوز منتقل نمایند.

معمولا سرورهای ویندوز قابلیتهای بیشتری دارند و البته از نظر هزینه گرانتر از لینوکس میباشند. اما سرورهای لینوکس معمولا با ثبات تر (Stable) هستند و از نظر سرعت نیز بین دو سیستم تفاوت چندانی وجود ندارد.

از نظر امنیت سرورهای لینوکس امن تر از ویندوز هستند. اما ما در شرکت ارتباط نوین با در نظر گرفتن تمامی مسائل امنیتی بر روی هر دو سیستم امنیت هر دو پلاتفرم را تضمین مینماییم و به شما پیشنهاد میکنیم در هنگام انتخاب سرور بیشتر به امکاناتی که به شما ارائه میشوند توجه کنید تا مسائل امنیتی.

نکته مهم : عده ای تصور میکنند که برای استفاده از سرور لینوکس ، باید بر روی کامپیوتر خود سیستم عامل لینوکس نصب کنند. این فرضیه 100% اشتباه است و کاربران با هر سیستم عاملی میتوانند به سادگی از خدمات سرورهای لینوکس و سایتهایی که بر روی این سیستم عامل قرار دارند استفاده نمایند. در کاربری خدمات این سرورها هیچ مشکلی وجود ندارد و بعضا حتی از کار با ویندوز نیز راحتتر است.
 

جدول مقایسه قابلیتها و تواناییهای دو سیستم عامل (بدترین=0 ، بهترین=5) :

ویندوز 2003 لینوکس  
4 5 قابلیت اطمینان
4 5 سادگی استفاده
5 5 قابلیت ارتقاء در صورت نیاز
5 3 قابلیت کار با محصولات مایکروسافت
3 5

نرم افزارهای رایگان یا Open Source

5 5 سرعت
5 5 امکانات
5 5 قیمت

 

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

 

  لینوکس ویندوز 2003
FrontPage Extention
Flash
Shockwave
Real Audio/Video
CGI-Scripts
Perl
PHP
SSH
MySQL
Web-Based Control Panel
Anonymous FTP
Web Site Statistics
Web-Based Email
SQL 2000
Cold Fusion
ASP
MS Access
Visual Basic Scripts
Windows Media

.NET Framework 1 & 2

آشنایی با حملات pharming

تهدیدهای جدیدی که هویت و اطلاعات کاربر را هدف قرار داده اند،‌رویکردهای جدید امنیتی را طلب می کند.

امروزه، حملات phishing ساده تر و کم خطرتر از تهدیدهای آنلاینی که در حال تجربه شدن هستند، به نظر می رسند. حملات phishing به آسانی شناخته می شوند و می توان به سرعت آنها را از کار انداخت. جرائم سازمان یافته از این حد گذشته و پیچیدگی آنها به طرز چشم گیری افزایش یافته است. امروزه، کاربران با اشکال موذیانه تری از حمله مواجه می شوند و کشف و مقابله علیه آنها بسیار مشکل تر است.

 

گونه ای جدید از حمله

این گونه جدید حمله بعنوان pharming شناخته می شود. pharming بجای اینکه کاربر را گول بزند تا به یک ایمیل تقلبی پاسخ دهد تا او را به یک وب سایت جعلی هدایت  کند، برای فریب دادن کاربر برای تسلیم هویت و اطلاعات حساسش، از روش های زیرکانه تری استفاده می کند. این حملات از اسب های تروا (تروجان) برای نصب برنامه های کلیدخوان و برنامه های هدایت کننده استفاده می کنند تا به یک نفوذگر اجازه دهند کلمات عبور و شماره  کارت های اعتباری را بدست آورد، بدون اینکه کاربر مجبور به انجام کاری غیرعادی باشد. در اینجا دو مثال از نحوه این حمله آورده شده است:

۱- کاربر یک ایمیل ظاهراً صحیح را باز می کند که او را تشویق می کند تا فایل الحاقی به ایمیل را باز کند. این فایل الحاقی بصورت مخفیانه یک «کلیدخوان» (برنامه ای است که کلیدهایی را که توسط کاربر زده می شود، ثبت می کند) نصب می کند. هنگامی که کاربر به بانک آنلاین خود سر می زند، کلیدخوان این را تشخیص می دهد و ورودی های صفحه کلید کاربر را هنگامی که وی اسم و کلمه عبور را تایپ می کند،  ثبت می کند. سپس این اطلاعات برای نفوذگر ارسال می شود تا برای دسترسی به حساب کاربر استفاده شود.

 

 

 

۲- یک کاربر ممکن است با دانلود کردن یک فایل یا مشاهده یک وب سایت که حاوی ActiveX control است، سهواً یک «هدایت کننده» (redirector) را روی سیستم خود نصب کند. این کار باعث می شود که فایل های موجود در سیستم دچار تغییراتی شود و هنگامی که کاربر به بانک آنلاین خود سر می زند، به وب سایت نفوذگر هدایت شود. این عمل می تواند با مسموم کردن سرور DNS انجام گیرد که برای آدرس بانک آنلاین کاربر، IP وب سایت نفوذگر را می فرستد. حملات پیچیده تر می توانند ارتباط را با بانک کاربر برقرار کنند و هنگامی که پروسه در حال انجام است، ترافیک عبوری بین کاربر و بانک (شامل کلمات عبور و اطلاعات شخصی) را مشاهده کنند. در اصل نفوذگر خود را بین کاربران و بانک قرار می دهد.

 

 

 

چه می توان کرد؟

از نظر تاریخی، رویکرد امنیتی که برای این نوع از حملات بکار گرفته شده است، مشابه مفهوم گارد مرزی (Boarder Guard) بوده است. ورود موارد زیان رسان را به کامپیوتر متوقف کنید و جلوی کاربر را از رفتن به مکان های بد بگیرید. ابزارهایی مانند آنتی ویروس، ضدجاسوس، فایروال ها و تشخیص دهندگان نفوذ، همگی چنین رویکردی دارند. به هرحال، همچنانکه حملات به رشد خود ادامه می دهند و پیچیده تر می شوند، نمی توان از احتمال نصب شدن موفقیت آمیز یک کلیدخوان یا هدایت کننده علیرغم این گاردهای مرزی، غافل ماند.

 

 

 

برای سروکار داشتن با این احتمال، رویکرد متفاوت دیگری مورد نیاز است. علاوه بر ابزارهایی که ذکر آنها رفت، نیاز است که هویت و اطلاعات کاربران توسط  محافظ شخصی (body guard) مراقبت شود. یعنی، نیاز است که هویت و اطلاعات شخص بدون در نظر گرفتن نوع حمله و جایی که اطلاعات کاربر به آنجا می رود، همواره امن باقی بماند. این نوع امنیت قابلیت های محافظ شخصی را برای هویت کاربر ایجاد می کند و اهمیتی ندارد که اطلاعات کاربر به کجا فرستاده می شود و کلیدخوان نصب شده است و یا اینکه نفوذگر می تواند ترافیک اینترنت را نظارت کند.

دو قابلیت امنیتی وجود دارد که می تواند توانایی این محافظ شخصی را پیاده کند. اولی تصدیق هویت قوی (strong authentication) است. امروزه، کاربران عموماً برای محافظت از هویتشان به یک کلمه عبور اطمینان می کنند، اما احتمال زیادی وجود دارد که کلمه عبور توسط کسی که نظاره گر login است، دزدیده شود. داشتن یک عامل اضافی برای تصدیق هویت، یعنی چیزی که کاربر باید بصورت فیزیکی داشته باشد علاوه بر آنچه که می داند، می تواند یک هویت آنلاین را در برابر حمله محافظت کند. این کار قابل مقایسه با چگونگی تأیید هویت کاربران در ماشین های خودپرداز بانک است. کاربران هم کارت بانکی دارند و هم PIN را می دانند. با تصدیق هویت قوی، اگر کلیدخوان هم نصب شده باشد، می تواند تنها کلمه عبور را بگیرد و نه عامل فیزیکی استفاده شده در پروسه تصدیق هویت را. کلمه عبور به تنهایی و بدون فاکتور فیزیکی نمی تواند توسط نفوذگر برای دسترسی به حساب کاربر مورد استفاده قرار گیرد.

توانایی مهم دوم رمزنگاری مداوم است. امروزه، SSL (Secure Socket Layer) از اطلاعات ارسال شده توسط کاربران بگونه ای محافظت می کند که انگار تنها به سرور هدف ارسال می شوند. برای مثال، اگر یک کاربر کلمه عبور خود را وارد کند، به راحتی تا زمان رسیدن به و ب سرور در طرف دیگر، قابل مشاهده است. در مورد یک حمله هدایت کننده، ارتباط امن در سایت نفوذگر پایان می پذیرد و قبل از اینکه به سازمان آنلاین قانونی ارسال شود، دیتای کاربر در معرض افشاء قرار می گیرد. رمزنگاری مستمر می تواند از دیتا ،بدون در نظر گرفتن امنیت ارتباط، محافظت کند. ورودی های کاربر قبل از ترک کامپیوتر کاربر رمز می شوند و می توانند تنها توسط سازمان قانونی که به سرورهای طرف دیگر دسترسی دارد، رمزگشایی شوند. حتی اگر دیتا به این سرور نرسد، رمزشده باقی خواهد ماند و برای یک نفوذگر قابل استفاده نیست.

 

 

 

این دو قابلیت به همراه هم، می توانند نقش محافظ شخصی را برای محافظت از هویت و اطلاعات کاربر در دنیای خصمانه! اینترنت ایفاء کنند.

 

بررسی دنیای واقعی

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

چندین عامل وجود دارد که باید به هنگام تشویق کاربران به پذیرش تکنولوژی مورد نظر مورد توجه قرار گیرند:

·            نرم افزار کلاینت ـ هر نیازی به دانلود و نصب نرم افزار به عنوان یک مانع است...

·            واسط نرم افزار ـ خطرات و پیچیدگی که کاربر برای پیاده سازی تجربه می کند...

·            راحتی استفاده ـ مخصوصاً برای تصدیق هویت دو عامله! ، راحتی استفاده شامل قابلیت حمل، دوام است. سهولت کار با واسط کاربر نیز مورد توجه جدی است.

 

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

به این منظور تکنولوژی های محافظ شخصی باید سطح بالایی از امنیت را در حالی که هزینه کمی در بردارند و برای استفاده آسان هستند، فراهم کنند.