發表文章

使用 homebrew 在 Mac 上安裝 mysql

圖片
圖片來源:wiki 前言     由於課程需求,需要練習SQL指令,既然要練習SQL只好找最多人在用的MySQL,這樣除錯起來比較方便XD 安裝步驟 為了極簡化安裝步驟,我們先行安裝homebrew在mac上,接著輸入以下指令  $ brew install mysql 這樣就安裝成功啦~ 基礎使用 啟用mysql.server $ mysql.server start 驗證root帳號可以使用 $ mysql -u root -p 密碼為空,什麼都不用輸入即可使用 顯示DataBases > show databases 參考文獻 1.http://chaneswin.pixnet.net/blog/post/31535983-mac-%E5%8A%A0%E8%A3%9D-mysql

Mac 開發人員必用神器 -- homebrew

圖片
圖片來源:http://brew.sh/index_zh-tw.html 前言     身為Mac 重度使用者,常常會需要去安裝有的沒有的軟體,但安裝時候安裝的步驟的真的超麻煩,有些還要去修改路徑或環境變數,更別提還有要 make install 的...,只要有了這個管理神器 -- homebrew 就可以輕鬆解決這些困擾,讓你安裝軟體減輕不少負擔。 安裝Homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 你會發現這是用ruby的環境來安裝,但mac本身內建Ruby,所以不用太擔心 基本指令 man brew    跟 brew約會 brew help    查詢使用說明 brew serach 查詢可安裝套件 brew list      列出已安裝套件 brew install 安裝套件 應用 我們來安裝git,只要輸入以下即可安裝成功 brew install git 或是安裝 mysql,只要輸入 brew install mysql 就是這麼簡單,這麼輕鬆!!! 安裝前建議先打上 brew doctor,會顯示建議的設定需求 參考文獻 1.http://brew.sh/index_zh-tw.html

[Linux] 利用 pipe 解決 fork 共用變數問題

圖片
圖片來源:https://jan.newmarch.name/ProgrammingUnix/ipc/lecture.html 目錄 一.背景知識 二.實作步驟 三.參考文獻 一.背景知識 1.Linux     Linux是一種自由和開放原始碼的類UNIX作業系統。術語Linux只表示作業系統核心本身,但通常採用Linux核心來表達該意思。Linux則常用來指基於Linux核心的完整作業系統,包括GUI元件和許多其他實用工具。由於這些支援使用者空間的系統工具和庫主要由理察·斯托曼於1983年發起的GNU計劃提供,自由軟體基金會提議將該組合系統命名為GNU/Linux[7][8],但Linux不屬於GNU計劃。 2.fork()      In  computing , particularly in the context of the  Unix  operating system and its  workalikes ,  fork  is an operation whereby a  process  creates a copy of itself. It is usually a  system call , implemented in the  kernel . Fork is the primary (and historically, only) method of process creation on Unix-like operating systems. 3.pipe     pipe() creates a pipe, a unidirectional data channel that can be used for interprocess ommunication.  The array pipefd is used to return two file descriptors referring to the ends of the pipe. pipefd[0] refers to the read e...

添加 System call(系統呼叫) 至 linux kernel (環境:Ubuntu 12.04LTS + kernel:3.13.0-32)

圖片
圖與內文無關 目錄 一.背景知識 二.實作步驟 三.Step by step 四.參考文獻 一.背景知識 1.Linux     Linux是一種自由和開放原始碼的類UNIX作業系統。術語Linux只表示作業系統核心本身,但通常採用Linux核心來表達該意思。Linux則常用來指基於Linux核心的完整作業系統,包括GUI元件和許多其他實用工具。由於這些支援使用者空間的系統工具和庫主要由理察·斯托曼於1983年發起的GNU計劃提供,自由軟體基金會提議將該組合系統命名為GNU/Linux[7][8],但Linux不屬於GNU計劃。 2.Linux kernel     Linux內核(英語:Linux kernel),是一種電腦作業系統內核,以C語言和組合語言寫成,符合POSIX標準,以GNU通用公眾授權條款釋出。Linux內核最早是由芬蘭駭客林納斯·托瓦茲為嘗試在自己的英特爾x86架構電腦上提供自由免費的類Unix系統而開發的。該計劃開始於1991年,林納斯·托瓦茲當時在Usenet新聞群組comp.os.minix登載貼文[7],這份著名的貼文標示著Linux內核計劃的正式開始。 3.System call (系統呼叫)     指運行在使用者空間的程序向作業系統內核請求需要更高權限運行的服務。系統調用提供了用戶程序與作業系統之間的接口。大多數系統交互式操作需求在內核態執行。如設備IO操作或者進程間通信。 二.實作步驟 各kernel版本或是本身OS的不同,在某些地方上會有些微不,例如檔案位置,檔案名稱,或是include的標頭檔不同,這部分可能就要上網找資料去惹,另外不同的 Linux 系統之間也有可能使用不同的指令, 在實作時請多留意自己的環境 ,本實作是以 Ubuntu 12.04LTS + kernel:3.13.0-32-generic 來執行。以下流程可供參,對於其他環境來說應該是大同小異的。 Kernel side 1.  下載 kernel source 2.  定義system call sys_hello(): 3. 添加 hello 目錄至 ...

GTA 5 "無法初始化DirectX 9 裝置" 解決方案

圖片
字樣"無法初始化DirectX 9 裝置" 我相信不少玩家都有遇到這個問題 然後試了千種方法依然無解,這種問題實在很惱人 例如:重新安裝GTA5. 重灌DirectX. 重灌顯示卡的驅動程式. 重灌OS .......等 總之,後來我在Steam討論區上找到了個超簡易的方法 即可解救芸芸眾生,當上看到可行的時候,真的莫名感動O__________Q 請依照以下步驟: 1.按下鍵盤上的 " windows + R " 2.接著輸入" regedit " 3.在下面找到 HKEY_LOCAL_MACHINE>SOFTWARE>MICROSOFT>DIRECT3D>DRIVERS 4.將 SoftwareOnly 更改為 0 5.享受遊戲 這樣還不行的朋友,我們只好再多研究研究,畢竟我的作業環境已經很不理想了 電腦配備:windows8 64位元 + 顯示卡 AMD R9-270 不是最多人使用的windows7 也不是最新版本的windows 8.1 同時也是最多問題而且無解的A卡((通常網上對於顯卡的解決方案都是對N卡有效 所以你也要是不行就多找找法子或是提出問題吧 記得提問時最好附上自己的作業環境 因為大部分的問題都與之息息相關 解決方法也會有所改變

GTA V "Unable to initialize DirectX 9 Device" solution

圖片
Hi there! I believe this question has been annoyed somebody for a while But, you can follow the step below the paragraph . Accroding to this solution, http://steamcommunity.com/app/271590/discussions/0/611703709830024441/#p2 "we have to get in registry editor and browse to  HKEY_LOCAL_MACHINE>SOFTWARE>MICROSOFT>DIRECT3D>DRIVERS and change SoftwareOnly to 0. Direct3D Accelleration was enabled and BAM in game" Make sure you have to do is: Click windows + R >> type "regedit" >> find HKEY_LOCAL_MACHINE>SOFTWARE>MICROSOFT>DIRECT3D>DRIVERS >> change SoftwareOnly to 0 It worked for me. I wish you can enjoy game with me.

Change congestion control algorithm in Linux

圖片
1.查看可用的TCP version ls /lib/modules/`uname -r`/kernel/net/ipv4/ (我電腦uname -r 是 3.13.0-32-generic) 會跑出類似的東西 ip_gre.ko netfilter tcp_cubic.ko tcp_htcp.ko tcp_lp.ko tcp_vegas.ko ipip.ko tcp_bic.ko tcp_highspeed.ko tcp_hybla.ko tcp_scalable.ko tcp_veno.ko 2.查看現在跑的TCP version cat /proc/sys/net/ipv4/tcp_congestion_control 3.更改Linux預設的TCP version (關鍵字為:Congestion Control Algorithms) (記得到root sudo -s) echo "westwood" > /proc/sys/net/ipv4/tcp_congestion_control 4.觀察TCP version 的差異 a.安裝 netperf  (serve/client 都要安裝喔) 到這個網站下載 ftp://ftp.netperf.org/netperf/ 解壓縮他              tar zxvf netperf-2.6.0.tar.gz CD到資料夾         cd netperf-2.6.0 輸入指令             ./configure 輸入指令             make 輸入指令             make install b.server 端指令 [root@server2 opt]# netserver Starting netserver at port 12865 S...