2016年9月20日 星期二

Linux SCSI CDB vs ATA Command

關於 Linux 下直接使用 ATA Command
  Linux ioctl command for bypassing ATA command(Identify) - Sample Code
  這是直接使用 ioctl(device, HDIO_DRIVE_CMD, buf);
  真是方便, 以前在 NIOS 中, 程式寫了一大堆程式才做出來.
  但還是建議使用 Hdparm 的  sgio方式

另一個是請查詢 hdparm 的原始程式
  https://sourceforge.net/projects/hdparm/
  hdparm.c / sgio.c / sgio.h

請注意 hdparm 的 sgio 方式, 無法對 SAS HDD下這種 ATA Command
SAS HDD 請使用 CDB Command  (SPC & SBC)

T10
SCSI Primary Commands - 5 (SPC-5)  spc5r12.pdf
SCSI Block Commands - 4 (SBC-4) sbc4r11.pdf

2016年9月14日 星期三

Linx USB Disk 相關指令

臨時筆記...

lshw
dmesg
sudo fdisk OR sudo fdisk -l
sudo blkid
lsblk
mount
lsusb
usb-devices
df -h
Device hotplug event notification


USB utilities for Linux
    Download Source Code: Source code 

Linux USB Tools




Linux Hotplug
NETLINK_KOBJECT_UEVENT
https://www.google.com.tw/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=NETLINK_KOBJECT_UEVENT

http://nano-chicken.blogspot.tw/2010/01/linux-modules111-sysfs-and-hotplug.html
http://blog.chinaunix.net/uid-24943863-id-3223000.html


2016年9月13日 星期二

Linux + Windows 7 網路芳鄰自動斷線的問題

windows 7 網路芳鄰保持連線, 防止自動斷線, 造成 Linux連線問題
https://support.microsoft.com/zh-tw/kb/297684#LetMeFixItMyselfAlways


如果要關閉自動中斷連線功能,請開啟命令提示字元輸入下列命令,然後按 ENTER 鍵:
net config server /autodisconnect:-1

如果要變更伺服器服務自動中斷連線功能的預設逾時期間,請開啟命令提示字元,輸入下行,然後按 ENTER 鍵
net config server /autodisconnect:number
,其中 number 是您要伺服器中斷對應磁碟機的連線之前必須等待的分鐘數。這個命令的最大值為 65,535。

2016年9月9日 星期五

Ubuntu 14.x 開機自動登入及啟動程式


一: GUI 模式下

Step 1:
 Alt-F2
Step 2:
 gnome-session-properties




二. 文字模式下

1: 要改成文字模式做法是編輯 /etc/default/grub
   將這一行的設定 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
   修改為  GRUB_CMDLINE_LINUX_DEFAULT="text"
2: 修改 /etc/init/tty1.conf
   將這一行的設定 exec /sbin/getty -8 38400 tty1
   修改為  # exec /sbin/getty -8 38400 tty1 -a root
    那個 root 是指登入的帳號名稱 username
    密碼不用輸入, 會自動忽略
3: 修改 /root/.bashrc 檔案
    增加最後一行
     exec /MyDir/MyExecFile

    記得要修改  MyExecFile至這個執行檔的權限
    chmod 777 /MyDir/MyExecFile

4:切換 tty1 和 tty2 使用指者界面
   (換另一個user account 登入)
   使用鍵盤 CTRL-Alt-F2

 

======================
cd /
madir usb
mount /dev/s
mount /dev/sdb1  /usb
cd usb
cp /usb/MyExecFile /MyDir
chmod 777 /MyDir/MyExecFile
unmount /dev/sdb1
reboot


2016年6月29日 星期三

關於 USB Type-C 傳輸線接頭

關於 USB Type-C 傳輸線接頭
現在已有多家同時使用這種傳輸線接頭
也就是說, 一種線材同時被多種協定拿去使用
這和過去一種線材代表一種傳輸協定不同了

下面列出已知 USB Type-C 被使用到的傳輸協定

  傳輸協定              頻寬        速度  
  Thunderbolt 3       40Gbps/s   約 4.768GB/s
  USB 3.1             10Gbps/s   約 1.192GB/s
  USB 3.0              5Gbps/s   約 596MB/s
  USB 2.0             480Mbps/s  約 57.2MB/s

現在市面上手機在用的 USB Type-C 傳輸線接頭, 是使用 USB 2.0傳輸協定.

相信過一陣子一定會看到用USB Type-C 傳輸線做成 PCIe的傳輸線
這個我需要啊! 快點出來.

關於跨平台C++原始程式內含中文字變成亂碼的解決方法


關於C++原始程式跨平台內含中文字解說之方法

同一份 C++程式( .cpp 和 .h)原始程式檔案
如果原始程式檔案( .cpp 和 .h)內含中文字解說
想要在 Windows 和 Linux 中共同使用
這樣中文字就不會變成亂碼


方法如下

Linux 端 Eclipse 設定如下
 將原始程式儲存為 UTF-8  NO BOM
 (Linux G++ 只支援 UTF-8  NO BOM 格式)

如果舊的 .cpp, 可以使用UltraEdit 開啟後, 再另存新檔, 成為 UTF-8  NO BOM



Windows 端 Eclipse 設定如下:
每一個 Project 都要單獨設定一次

如果舊的 .cpp, 可以使用UltraEdit 開啟後, 再另存新檔, 成為 UTF-8  NO BOM
要注意一下 makefile 這檔案, 如果編譯有錯, 請在 Eclipse 開啟/檢查/存檔/編譯

Windows 端 Araxis Merge 設定如下:


Windows 端 Notepad++ 設定如下:



LSI 9211-8I Firmware & BIOS Update

LSI 9211-8I Firmware & BIOS Update

http://www.avagotech.com/products/server-storage/host-bus-adapters/sas-9211-8i#downloads

Firmware  Page
  Download
9211-8i_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Windows
Package_P20_Firmware_BIOS_for_MSDOS_WindowsVersion: 20.00.07.00
File Size: 1700 KB
Language: English

Unzip File : 9211-8i_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows.zip

File 1:
\sas2flash_win_x64_rel\sas2flash.exe

File 2:
\Firmware\HBA_9211_8i_IR\2118ir.bin
 or
\Firmware\HBA_9211_8i_IR\2118it.bin

File 3:
\sasbios_rel\mptsas2.rom


Update BIOS
> sas2flash.exe -b mptsas2.rom

Update Firmware
> sas2flash.exe -o -f 2118ir.bin