Time of Update: 2018-12-03
在windows中建立的文字檔,拖動到Linux下會亂碼。(不考慮換行問題)原因很簡單,使用windows內建的記事本預設的編碼方式為ANSI,ANSI是使用兩個位元組來編碼的,在中文簡體作業系統中ANSI對應的編碼方式為GBK,而Linux系統會自動識別Unicode的字元,但是不會識別GBK,因而使從windows到Linux的檔案出現亂碼。 解決方案:使用iconv命令來轉換檔的格式。如, iconv -f GBK -t UTF-8 test.txt.
Time of Update: 2018-12-03
標準庫函數:getopt 標頭檔 #include <unistd.h>int getopt(int argc, char * const argv[],const char *optstring);解釋:take the argc and argv as passed to main function (argc和argv參數與int main(int argc,char * argv[])相同)and an options specifier string that
Time of Update: 2018-12-03
Linux系統調用-- recv/recvfrom/recvmsg函數詳解功能描述: 從通訊端上接收一個訊息。對於recvfrom 和
Time of Update: 2018-12-03
1 selectselect()系統調用提供一個機制來實現同步多元I/O:#include <sys/time.h>#include <sys/types.h>#include <unistd.h>int select (int n,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,struct timeval *timeout);FD_CLR(int fd, fd_set
Time of Update: 2018-12-03
函數功能描述:struct page alloc_pages(unsigned int flags, unsigned int order);函數以gfp_mask分配方式分配2的order次方(1<<order)個*連續的物理頁*。分配的頁可以通過void page_address(struct page page)函數獲得該page對應的邏輯地址指標。如果無需用到struct page可以直接用__get_free_pages(unsigned int flags,
Time of Update: 2018-12-03
遇到問題:經常在linux裝服務,難免少不了看伺服器上開了哪些服務,開了哪些連接埠。[root@jgtest ~]# netstat -antp|grep tcp◆ 關閉ipv6地址vi /etc/sysconfig/network-scripts/ifcfg-eth0NETWORKING=yes#NETWORKING_IPV6=noHOSTNAME=mail.hello.com◆ 進入這個檔案,在文尾添加如下2行,儲存退出即可.vi /etc/modprobe.confalias ipv6
Time of Update: 2018-12-03
在前面章節的討論中,我們一直基於一個假設:Linux中的時鐘事件都是由一個周期時鐘提供,不管系統中的clock_event_device是工作於周期觸發模式,還是工作於單觸發模式,也不管定時器系統是工作於低解析度模式,還是高精度模式,核心都竭盡所能,用不同的方式提供周期時鐘,以產生週期性tick事件,tick事件或者用於全域的時間管理(jiffies和時間的更新),或者用於本地cpu的進程統計、時間輪定時器架構等等。周期性時鐘雖然簡單有效,但是也帶來了一些缺點,尤其在系統的功耗上,因為就算系統目
Time of Update: 2018-12-03
神奇的fdisk和dd命令 深深的苦惱中,靈光乍現:神奇的ghost的原理是什麼呢?不就是資料複製嗎?Linux下的dd命令不就是最強大的資料複製工具! 既然如此,我為什麼要使用g4l這樣複雜的工具呢?一條dd命令不就可以幫我實現任意複雜的鏡像複製和恢複的需求了嗎?管他是grub,還是ext4,btrfs,FAT32,NTFS...dd面前眾生平等。 進入Linux作業系統,開啟命令列,執行如下命令: sudo fdisk -u -l
Time of Update: 2018-12-03
在基於ARM的嵌入式系統開發中,常常用到交叉編譯的GCC工具鏈有兩種:arm-linux-*和 arm-elf-*,兩者區別主要在於使用不同的C庫檔案。arm-linux-*使用GNU的Glibc,而arm-elf-*一般使用 uClibc/uC-libc或者使用REDHAT專門為嵌入式系統的開發的C庫newlib.Glibc。uClibc/uC-libc以及 newlib都是C語言庫檔案,只是所應用的領域不同而已,Glibc是針對PC開發的,uClibc/uC-libc是與Glibc
Time of Update: 2018-12-03
============================================作者:yuanluluhttp://blog.csdn.net/yuanlulu著作權沒有,但是轉載請保留此段聲明============================================spi_master/spi_device和spi_driver的關係。 重要的資料結構:~~~~~~~~~~spi控制器的主題是spi_master,雖然一般不需要自己編寫spi控制器驅動,瞭解這個結構體還是
Time of Update: 2018-12-03
在Fedora 7 環境下配置ARM Linux 交叉編譯 工具1、從http://kegel.com/crosstool處下載crosstool-0.43.tar.gz放到/HOME下,並解壓:tar -zxvf crosstool-0.43.tar.gz假如你想要arm9tdmi上的工具鏈(其它工具鏈方法相同),進入crosstool-0.43目錄,用文字編輯器開啟demo-arm.sh,內容如下:#!/bin/sh# This script. has one line for each
Time of Update: 2018-12-03
1.Windows系統下svn使用1)安裝用戶端:http://tortoisesvn.net/downloads2)建立工作目錄: 建立一個檔案夾(工作目錄),右擊選擇checkout,填寫URL和使用者名稱密碼 也可在我的電腦或案頭空白處直接右鍵-checkout,填寫URL和使用者名稱密碼,輸入本地檔案夾名稱即可。3)更新本地工作目錄檔案: 工作目錄右鍵update,作用是更新,保持與伺服器最新版本同步,下載有更新的檔案。下載後,檔案都顯示,則表示已更新至最新版本。
Time of Update: 2018-12-03
Linux 核心支援讀寫Fat、NTFS、Vfat、Fat32、Hfs 等檔案系統(至少可以讀),因此在 Linux 下訪問 Windows 要比在 Windows 下訪問 Linux 方面的多,不需要使用專門的軟體,直接使用 Linux 命令即可。Fat/Fat32分區時 Linux 訪問 Windows 分區Linux 將系統中所有的裝置都看作檔案,所以在 Linux 下訪問 Windows 分區非常方便,只要使用 mount 命令將 Windows 分區掛接成 Linux
Time of Update: 2018-12-03
最近將一個Windows程式移植到Linux上,發現兩個作業系統對很多資料類型的命名方式區別很大,比如Windows下對於無符號資料類型一般用U+x的方式,像UINT、UCHAR、ULONG,而Linux上就要中規中矩,都是unsigned +x;另外,還有一些資料類型是Windows有,而Linux沒有的,像DWORD、HANDLE、LPSTR等等。於是我寫了一個Windows資料類型在Linux下進行轉換的標頭檔,貼在這裡,供大家學習與參考吧!/** windows2linux.hpp**
Time of Update: 2018-12-04
一、使用yum安裝:在 /etc/yum.repos.d/下面建立dag.repo檔案在檔案中輸入源地址:[root@hmg2 yum.repos.d]# cat dag.repo[dag]name=Dag RPM Repository for Red Hat Enterprise
Time of Update: 2018-12-04
買了個1T的硬碟,因為要和WINDOWS交換,所以只能用NTFS格式。 安裝hal和dbus就不說了。一、安裝軟體# emerge ntfs-3g二、配置,並編譯核心# cd /usr/src/linux# make menuconfig勾選 File systems ---> <M> Filesystem in Userspace support# make clean && make && modules_install三、載入核心模組#
Time of Update: 2018-12-04
1、環境說明# uname -aLinux df53l 2.6.28-gentoo-r5 #1 SMP Tue Jun 16 18:58:24 CST 2009 i686Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz GenuineIntel GNU/Linux# emerge -pv apache[ebuild R ] www-servers/apache-2.2.11 USE="ssl -debug -doc -ldap
Time of Update: 2018-12-04
一、叢集的基本概念 有一種常見的方法可以大幅提高伺服器的安全性,這就是叢集。 Cluster叢集技術可如下定義:一組相互獨立的伺服器在網路中表現為單一的系統,並以單一系統的模式加以管理。此單一系統為客戶工作站提供高可靠性的服務。 大多數模式下,叢集中所有的電腦擁有一個共同的名稱,叢集內任一系統上啟動並執行服務可被所有的網路客戶所使用。Cluster必須可以協調管理各分離的組件的錯誤和失敗,並可透明地向Cluster中加入組件。
Time of Update: 2018-12-04
fg、bg、jobs、&、ctrl + z都是跟系統任務有關的,雖然現在基本上不怎麼需要用到這些命令,但學會了也是很實用的 一。& 最經常被用到 這個用在一個命令的最後,可以把這個命令放到後台執行二。ctrl + z 可以將一個正在前台執行的命令放到後台,並且暫停三。jobs 查看當前有多少在後台啟動並執行命令四。fg 將後台中的命令調至前台繼續運行 如果後台中有多個命令,可以用 fg
Time of Update: 2018-12-04
嵌入式裝置的檔案系統系統需要一種以結構化格式儲存和檢索資訊的方法;這就需要檔案系統的參與。Ramdisk(請參閱參考資料)是通過將電腦的 RAM 用作裝置來建立和掛裝檔案系統的一種機制,它通常用於無盤系統(當然包括微型嵌入式裝置,它只包含作為永久儲存媒質的快閃記憶體晶片)。使用者可以根據可靠性、健壯性和/或增強功能的需求來選擇檔案系統的類型。下一節將討論幾個可用選項及其優缺點。第二版擴充檔案系統(Ext2fs)Ext2fs 是 Linux 事實上的標準檔案系統,它已經取代了它的前任 —