浮點異常情況(VX FP TASK)

2021-06-18 12:00:17 字數 607 閱讀 9693

總結:

在生成任務時,如果在任務中使用浮點計算,一定需要將任務的標誌vx_fp_task設定,否則將會出錯,主要是在其他任務中出現0/0錯誤

產生原因:

當沒有設定浮點計算標識vx_fp_task時,在進入任務時沒有儲存浮點暫存器值,這樣在任務中進行浮點運算將破壞了浮點暫存器的內容,而在任務退出後,浮點暫存器不能恢復,造成其他任務在進行浮點計算時出現浮點運算錯誤。

通常,任務選項裡面用得最多的是vx_fp_task選項,這是為**裡面包含有浮點運算的任務弄的乙個選項,選用這個選項vxworks進行任務切換的時候,就會進行儲存和恢復硬體浮點暫存器的操作(或是軟體模擬的浮點庫的操作),通常為了可靠起見,應用程式類任務(非驅動)都使用這個選項(當然,具體用不用自己要評估,如果自己很清楚裡面不包含浮點運算,就沒有必要了)。

修改辦法:

在建立任務時,設定vx_fp_task標識

2、在從硬體或者其他軟體任務獲取浮點數值時,一定需要確認入口的數值合法,否則如果一些非法數值將造成浮點計算溢位,從而產生浮點溢位錯誤;

產生原因:

輸入的浮點數非法範圍,進行浮點計算將溢位;

規避辦法:

在進行浮點數入口出進行數值合法性判斷,對於非法值進行預處理;

python 異常情況處理

def ceshi number input 請輸入乙個數字 number int number try 裡面是有可能有異常的 try result 10 number except 是異常捕獲,多個except也只能執行乙個 except valueerror print 請輸入整數 except...

fwrite flock異常情況測試

更名操作 兩個程序都開啟檔案之後,乙個鎖住 iotest 乙個等待鎖 iotest2 此時修改檔案iotest.log的名字 更名操作 iotest程序開啟檔案並鎖住檔案,iotest2不開啟檔案,此時修改檔案iotest.log的名字 刪除操作 兩個程序都開啟檔案,乙個程序鎖住 iotest 乙個...

lftp連線異常情況分析過程

問題現象 通過rpm安裝好lftp後,執行lftp huangmr huangmr 192.168.107.132無法連線 lftp huangmr 192.168.107.132 ls ls at 0 delaying before reconnect 175 或者是一直處於connecting....