Google
 

Monday, March 12, 2007

Sites of Free download ebooks

  1. http://www.xpressionsz.com/




--
Happy day, happy life!

Linux Guides

REF:http://www.linuxhq.com/guides/index.html


  • Linux Getting Started Guide
    Linux Installation and Getting Started is an installation and new-user guide to the Linux system. Linux is a free clone of the UNIX operating system developed for 80386 and 80486 machines. This book describes how to obtain and install Linux on your system, as well as how to start using it. Information on configuration of X-Windows, basic system administration, and much more is included.

  • System Administrator's Guide
    This is a manual and tutorial for keeping a Linux system up and running. This version is not finished, but the finished version is supposed to cover all the central topics except networking (for which see the Linux Network Administrators' Guide). This manual does not try to be a reference manual, or a manual to all the different programs that a system administrator might use. Separate documentation (such as man pages) exist for those.

  • Network Administrator's Guide
    This guide provides an overview to setting up and running a network using Linux. It covers such topics as, UUCP, TCP, Security, Hardware configuration and many other useful topics.

  • Linux Programmer's Guide
    This guides covers general programming hints and HOW-TO's for programming in the Linux environment. Topics include Unix pipes, IPC, Sound programming, character based app development, I/O ports, and porting applications to Linux from other operating systems.

  • Linux User's Guide
    Anyone who has Linux, the free Unix clone written by Linus Torvalds , on their PC but doesn't know what to do next should read this book. In this book, we'll cover most of the basic Unix commands, as well as some of the more advanced ones. We'll also talk about GNU Emacs , a powerful editor, and several other large Unix applications.

  • The Linux Kernel
    The kernel is at the heart of the Operating System. This book is a guide to how the kernel fits together, how it works; a tour of the kernel.

  • The Linux Kernel Module Programming Guide
    This document is for people who want to write kernel modules.

--
Happy day, happy life!

Links Linux Sites

REF:http://www.linuxhq.com/links/
There are many, many really good Linux sites out there. Here are a selection of "bounce" sites which collect links to other Linux sites. We also provide links to other development sites.

Linux Link Sites

Kernel Development Sites

Hardware Compatibility Sites

Driver Sites

Open Source Software Directories

Specialized Software Directories

Commercial Software Directories

Non-English Linux Sites

Belgian

Chinese

Croatian

Czech

Danish

Dutch

Esperanto

Estonian

French

German

Greek

Hungarian

Italian

Japanese

Korean

Norwegian

Polish

Portuguese

Russian

Spanish

Swedish

Swiss

Thai

Turkish



--
Happy day, happy life!

The Linux Kernel Module Programming Guide

REF: http://www.faqs.org/docs/kernel/

Peter Jay Salzman
Ori Pomerantz

2003-04-04 ver 2.4.0




--
Happy day, happy life!

Official Linux Kernel-Docs

REF: http://kernelbook.sourceforge.net/

The Parallel Port Subsystem
by Tim Waugh
  • Online HTML
  • PDF Document (66k)
  • Compressed Postscript
  • The Z8530 Programming Guide
    by Alan Cox
  • Online HTML
  • PDF Document (62k)
  • Compressed Postscript
  • Synchronous PPP and Cisco HDLC Programming Guide
    by Alan Cox
  • Online HTML
  • PDF Document (15k)
  • Compressed Postscript
  • The Video4Linux Book
    by Alan Cox
  • Online HTML
  • PDF Document (76k)
  • Compressed Postscript
  • The MCA Driver Programming Interface
    by Alan Cox
  • Online HTML
  • PDF Document (27k)
  • Compressed Postscript
  • CML2: Kernel Configuration Menu Language
    by Eric S. Raymond
  • Online HTML
  • PDF Document (56k)
  • Compressed Postscript
  • The Linux Kernel API
  • Online HTML
  • PDF Document (230k)
  • Compressed Postscript
  • Unreliable Guide to Kernel Hacking
    by Paul 'Rusty' Russel
  • Online HTML
  • PDF Document (50k)
  • Compressed Postscript
  • Unrealiable Guide to Locking
    by Paul 'Rusty' Russel
  • Online HTML
  • PDF Document (50k)
  • Compressed Postscript


  • --
    Happy day, happy life!

    Here are some good resources if you are interested in kernel programming

    REF:http://www.linuxhq.com/lkprogram.html#filesystem

      Various
    • Kernel Analysis HOWTO
      This document tries to explain some things about the Linux Kernel, such as the most important components, how they work, and so on. This HOWTO should help prevent the reader from needing to browse all the kernel source files searching for the "right function", declaration, and definition, and then linking each to the other.
    • The Linux Kernel
      This book is for Linux enthusiasts who want to know how the Linux kernel works. It is not an internals manual. Rather it describes the principles and mechanisms that Linux uses; how and why the Linux kernel works the way that it does.
    • Kernel Newbies
      A good place to start if you are new to kernel programming. They also run the IRC channel #kernelnewbies which you can reach at irc.kernelnewbies.org.
    • Kernel Traffic
      Kernel Traffic is a weekly summary of what is going on in the linux-kernel mailing-list. Very nice if you want to see where development is going, but dont wish to subscribe to that mailing-list (which is very high-traffic)
    • Official Linux Kernel-Docs
      Various documents on kernel programming
    • Unreliable Guide To Hacking The Linux Kernel
      This document describes the common routines and general requirements for kernel code: its goal is to serve as a primer for Linux kernel development for experienced C programmers.
    • Linux 2.4.x Initialization for IA-32
      This document is a description of the Linux 2.4 kernel initialization sequence on IA-32 processors.
    • Linux Kernel 2.4 Internals
      Introduction to the Linux 2.4 kernel.
    • Cross-Referencing Linux
      Easy browsing of the linux kernel code
    • User-mode Linux
      User-Mode Linux is a safe, secure way of running Linux versions and Linux processes. Run buggy software, experiment with new Linux kernels or distributions, and poke around in the internals of Linux, all without risking your main Linux setup.
    • Yet Another HOWTO Add a Syscall to Linux
      This is a short, quick example of how to add a system call to Linux for x86. This example is specific to Linux version 2.4.18 but it should be easy to modify the patch to work with other kernel versions.
    • Linux System Call Table
      This page lists the system calls for the Linux 2.2 kernel. It could also be thought of as an API for the interface between user space and kernel space.
    • Filesystems
    • The Second Extended Filesystem
      Covers Linux filesystems history, ext2 features, design, physical structure on disk etc. It is written by three of the top ext2 hackers, and is a must read!
    • Overview of the Virtual File System
      Brief introduction to the Linux Virtual File System. What is it, how it works, operations taken when opening a file or mounting a file system and description of important data structures explaining the purpose of each of their entries.
    • A Dual-Disk File System: ext4
      This paper presents the design and implementation of a Unix-compatible file system, ext4, which uses two disk partitions to store its data. One partition is used exclusively for directory-related information, and one partition for ordinary files.

    • Module programming
    • Linux Kernel Module Programming
      A bit dated, but an excellent guide for anyone wishing to get started on kernel module programming.
    • (nearly) Complete Linux Loadable Kernel Modules
      Another guide on kernel module programming, with focus on security
    • Devices
    • Linux Device Drivers, 2nd Edition
      Online version of an excellent book by Alessandro Rubini & Jonathan Corbet on how to write device drivers.
    • Writing a Linux device driver
      Quick primer on device driver programming.
    • Linux SCSI Generic (sg) HOWTO
      This HOWTO describes the SCSI Generic driver (sg) found in the Linux 2.4 production series of kernels.
    • Programming Guide for Linux USB Device Drivers
      This document should give detailed information about the current state of the USB subsystem and its API for USB device drivers. You will learn about different types of devices and their properties. Going into detail you will see how USB devices communicate on the bus. There is an overview of the Linux USB subsystem and the device driver framework. Then the API and its data structures will be explained step by step.
    • Networking
    • Linux netfilter Hacking HOWTO
      This document describes the netfilter architecture for Linux, how to hack it, and some of the major systems which sit on top of it, such as packet filtering, connection tracking and Network Address Translation.
    • The journey of a packet through the linux 2.4 network stack
      This document describes the journey of a network packet inside the linux kernel 2.4.x. This has changed drastically since 2.2 because the globally serialized bottom half was abandoned in favor of the new softirq system.
    • Netfilter connection tracking and nat helper modules
      This document gives a brief description how to write netfilter connection tracking helper and nat helper modules. Netfilter is the packet filtering / NAT infrastructure provided by the Linux 2.4.x kernel.
    • skb - Linux network buffers
      Short description about the linux network buffers (skb's)
    • Building into the Linux Network Layer
      Phrack article that points out interesting things that can be done using Kernel Modules in the Network Layer. Like most Phrack articles it is very interesting reading, especially if you are interested in security.

    • Security
    • Weakening the Linux Kernel
      Yet another excellent Phrack article. This one is about modifying system calls, Kernel Module hiding etc. Interesting security issue, if your kernel allows module usage. Mainly focus on the 2.0.x kernel series
    • Hardening the Linux Kernel
      This article covers a few areas of potential insecurity in the Linux OS and attempts to improve upon them. It contains several security related kernel patches for the 2.0.x kernels.
    • Writing Linux Kernel Keylogger
      This article begin by describing how the linux keyboard driver work, and discusses methods that can be used to create a kernel based keylogger. It then presents a smart, kernel-based linux keylogger.

    • Memory Management
    • Linux MM
      This site is supposed to provide full documentation on the Linux MM subsystem and to give a good overview of what's happening in the Linux MM community.
    • Rik van Riel lectures
      Very good texts on various aspects of memory management
    • Linux 2.4 Virtual Memory Overview
      On this page you can find some studies of Linux 2.4 VM system. This page was created to help us out to visualize VM system better.
    • Outline of the Linux Memory Management System
      These pages contain notes on the Linux memory-management system.


    --
    Happy day, happy life!

    Sunday, March 11, 2007

    Some Good Proverbs












    Snoopy pics



    Install DotNetNuke 4.4.0 on Windows XP

    Steps:
    1. Precondition: Your box has been installed the VS 2005 and Sql Server 2005
    2. Download a copy of DotNetNuke 4.4.0 source pack from its government site.
    3. Config IIS
      1. Extract the the source pack:DotNetNuke_4.4.0_Source to C:\DotNetNuke\.
      2. Setup a Virtual directory with name DotNetNuke from IIS, which will point to c:\DotNetNuke\WebSite\
      3. Set the the DotNetNuke site: execute permissions-> Scripts and Exectutables, Asp.Net version at the ASP.NET Tab -> 2.0.50727
      4. Enable the Enable-Default-Document setting on the Documents tab and make sure the the Default.aspx is in the list.
    4. Configure Sql Server 2005
      1. Create a new data base named as DotNetNuke
      2. Create a new sql server login user: dnn
      3. Add the dnn user as the dbowner of DotNetNuke data base

    5. Configure Web.Config
      1. At the root of the site (C:\DotNetNuke\Website), rename the release.config as Web.config
      2. Modify the Connection string of web.config file as following:
        1. In connectionstring section:
          <connectionStrings>
          <!-- Connection String for SQL Server 2005 Express
          <add
          name="SiteSqlServer"
          connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|Database.mdf;"
          providerName="System.Data.SqlClient" />
          -->
          <!-- Connection String for SQL Server 2000/2005-->
          <add name="SiteSqlServer" connectionString ="Server=(local);Database=DotNetNuke;uid=dnn;pwd=dnn;" providerName="System.Data.SqlClient " />
          </ connectionStrings>
        2. In appsettings section:

          <!-- Connection String for SQL Server 2005 Express - kept for backwards compatability - legacy modules
          <add key="SiteSqlServer" value="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|Database.mdf;"/>
          -->
          <!-- Connection String for SQL Server 2000/2005 - kept for backwards compatability - legacy modules -->
          <add key="SiteSqlServer" value="Server=(local);Database=DotNetNuke;uid=dnn;pwd=dnn;" />
    6. Set site root access permission
      1. First enable the Enable-Simple-File-Sharing setting of XP
      2. Add the full control permission of ASP.NET user on the site root folder:C:\DotNetNuke\Website and inherit the setting to all its child files and folders.
    7. Start to install
      1. Access the site url:http://localhost/dotnetnuke/
      2. You will see the installation successfully message after a few minutes.

    Exceptions encountered during installation:
    1. Error (HTTP 403 Forbidden) :
      1. Detail:
        1. This error (HTTP 403 Forbidden) means that Internet Explorer was able to connect to the website, but it does not have permission to view the webpage.
          For more information about HTTP errors, see Help.
      2. Solution:
        1. Make sure the Enable-Default-Document setting is enabled on the Documents tab of IIS web site property page and the the Default.aspx is in the document list.
    2. Access to the path 'C:\DotNetNuke\Website\web.config' is denied.
      1. Detail:
        1. DotNetNuke Configuration Error
          Access to the path 'C:\DotNetNuke\Website\web.config' is denied.

          DotNetNuke has extensive file upload capabilities for content, modules, and skins. These features require custom security settings so that the application is able to create and remove files in your website.

          Using Windows Explorer, browse to the root folder of the website ( C:\DotNetNuke by default ). Right-click the folder and select Sharing and Security from the popup menu ( please note that if you are using Windows XP you may need to Enable Simple File Sharing before these options are displayed ). Select the Security tab. Add the appropriate User Account and set the Permissions.


          If using Windows 2000 - IIS5

          the {Server}\ASPNET User Account must have Read, Write, and Change Control of the virtual root of your website.


          If using Windows 2003 - IIS6

          the NT AUTHORITY\NETWORK SERVICE User Account must have Read, Write, and Change Control of the virtual root of your website.

      2. Solution:
        1. Please check the access permission of the root of the site.
        2. Especially the Asp.Net user should have full control of the root folder and all its sub folders and files.
        3. Especially, only select the second to replace all permission of children.




    --
    Happy day, happy life!

    Saturday, March 10, 2007

    个人发展的新想法

    我做技术也许会成为有名的专家,但是难道我不能再做一些切实能给人们生活带来改善的事情,例如修灯泡!

    把技术当成业余爱好吧!

    把自己放到社会中最需要人才的地方吧,即使是收垃圾的工作。

    --
    Happy day, happy life!