本文目錄一覽:
大家知道ATM自動取款機是什麼操作系統的嗎
ATM自動取款機是windows XP SP1操作系統。
Windows XP是基於Windows 2000代碼的產品,擁有新的用戶圖形界面,叫做月神Luna,它包括了一些細微的修改;
此外,Windows XP 引入了一個“選擇任務”的用戶界面,使用戶可以由工具條訪問任務細節。它還包括簡化的Windows 2000的用戶安全特性,並整合了防火牆,試圖解決一直困擾微軟的安全問題。
ATM使用的windows XP SP1 是經過深度定製優化的。
atm系統主要包括哪幾個部分?
ATM系統主要由3部分組成:C端、V端、P端。
C端就是我們存取款時操作的部分,也是處理現金和保存現金的部分。
V端是ATM監控系統,作用是實時監控ATM機的運行情況,包括設備故障情況、現金剩餘量情況等等。
P端就是銀行後台主機,這裡面儲存着客戶的密碼、餘額,發生交易的時候P端向C端提供數據來源,並授權出鈔和記賬。
編寫一個C語言程序模擬銀行ATM機的賬戶管理功能,系統主要實現以下功能
按照你的願意把空都填好了,VC++ 6.0下編譯能通過,有警告信息,運行基本上能用,不過個人認為這個系統有很大的不足,比如輸入賬號的時候沒有輸出反饋信息,以及沒有對誤操作的處理等等。需要的話可以幫你改改!
#include stdio.h
#include conio.h
#include stdlib.h
#include string.h
#define AN 9 //表示賬號8位
#define PN 7 //表示密碼6位
#define ASN 3 //表示系統中共有3個賬戶信息
struct Account
{
char accountnumber[AN]; //表示賬號信息
char password[PN]; //表示賬戶的密碼信息
double balance; //表示賬戶的餘額
};
struct Account ats[ASN]={{“00000001″,”123456”,100},{“00000002″,”123456”,200},{“00000003″,”123456”,300}};
//ats數組用於存儲系統中三個賬戶的信息
int isCorrect(char *an,char *psd)
{
int i;
for(i=0;iASN;i++)
if(strcmp(ats[i].accountnumber,an)==0 strcmp(psd,ats[i].password)==0)
return 1;
return 0;
}
double getBalance(char *an)
{
int i;
for(i=0;iASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
return ats[i].balance;
}
void deposit(char *an,int amount)
{
int i;
for(i=0;iASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
ats[i].balance+=amount;
}
int withdraw(char *an,int amount)
{
int i;
for(i=0;iASN;i++)
if(strcmp(an,ats[i].accountnumber)==0)
return ats[i].balance-=amount;
}
void main()
{
char AccountNumber[AN]={‘\0’};
char psd[PN]={‘\0’};
int i,errorcount=0;
while(1)
{
printf(“\n請輸入8位賬號:”);
for(i=0;i8;i++)
AccountNumber[i]=getch();
printf(“\n請輸入6為密碼:”);
for(i=0;i6;i++)
{
psd[i]=getch();
putchar(‘*’);
}
if(isCorrect(AccountNumber,psd)==1)
{
int tag,amount;
while(1)
{
printf(“\n歡迎登錄銀行賬戶管理系統,請選擇您要的服務:1、查詢餘額;2、存款操作;3、取款操作;4、退出系統\n”);
scanf(“%d”,tag);
switch(tag)
{
case 1:
printf(“您現在的餘額為%f元\n”,getBalance(AccountNumber));
break;
case 2:
printf(“請輸入您的存款金額:”);
scanf(“%d”,amount);
deposit(AccountNumber,amount);
printf(“存款成功!您的當前餘額為:%f元\n”,getBalance(AccountNumber));
break;
case 3:
printf(“請輸入您的取款金額:”);
scanf(“%d”,amount);
if(amount=getBalance(AccountNumber))
printf(“取款成功!您的當前餘額為:%f元\n”,withdraw(AccountNumber,amount));
else
printf(“取款失敗!\n”);
break;
case 4:
break;
}
if(tag==4)
break;
}
}
else
{
errorcount++;
if(errorcount==3)
{
printf(“您已經連續三次輸入錯誤,系統將自動關閉\n”);
break;
}
}
}
}
自動取款機裝的是什麼系統
自動取款機上的 Windows XP
不了解 ATM 系統構成的,首先掃一下盲:
ATMC:ATM Client 就是我們常見的自動取款機
ATMM:ATM Manager 自動取款機的監視管理端
ATMP:ATM 後台服務器,從銀行的核心系統來看,它是一台前置機,因此 P 可能是指 Prefix 或 Processor 之類,和 POSP(POS機的後台設備)是一種類型。
由於新的 ATMC 是使用 Windows XP SP1 平台,鑒於大家對 XP 太了解了,所以對於銀行來說,一定要加強防範。
此方案中大概提了以下一些加固方法:
禁用 Guest、刪除不必要的用戶、給 Administrator 改名
NTFS 、禁用共享、禁止空連接、禁止顯示開始菜單欄等
…
如果這也算安全解決方案的話,我是不敢用這樣的 ATM 機的,你呢?
我的回復如下:
由於Windows XP 操作系統功能較為全面,用在 ATM 上必須經過特殊的安全加固措施,或者考慮採用 Windows XP Emebed 操作系統,這樣才能充分保證 ATM 的安全性,因為 ATM 的安全性是銀行應用系統的安全性的對外直接體現,意義很重大,所以需要在安全性上下很大功夫。
這個安全方案雖然從一定程度了提高了 ATMC 的安全性,但覆蓋面仍很不夠,工作步驟稍顯複雜,且有一些更有效的措施沒有採納,且較為簡單。建議參閱微軟網站(Technet )上相關文檔,進一步合理組織安全方案,並着重考慮以下內容:
1)應考慮所有 ATMC 的統一定製安裝,在統一定製安裝時,可以通過禁用不必要組件或服務、組策略等措施來加強安全性
2)Windows XP 一定要安裝 SP2,這樣就具備了自動安裝安全補丁,防火牆等功能,還要考慮建立 SUS 自動更新服務器
3)能過 IPSec 和 IP Filter 來提高網絡層的安全性
4)通過啟用所有安全日誌,並自動集中收集分析來反映 ATMC 的安裝狀況
5) Windows 的安全加固是一個系統工程,建議尋找專業的安全廠商來解決,這樣才能完全保證 ATMC 的安全性。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/227479.html