tag:blogger.com,1999:blog-43735168967679830502024-03-19T17:59:41.761-04:00Shaun'blogAnonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.comBlogger126125tag:blogger.com,1999:blog-4373516896767983050.post-69654486633739084242017-01-12T20:50:00.001-05:002017-01-12T20:54:39.320-05:00Fenix LD22 reviewI get one Fenix LD22 from its website <br />
<a href="https://www.fenixlighting.com/product/ld22-fenix-flashlight/">https://www.fenixlighting.com/product/ld22-fenix-flashlight/</a><br />
It has pretty solid design and specifically optimized for AA size Alkaline or Ni-Mh battery and I think it is designed smartly.<br />
Alkaline or Ni-Mh battery’s normal working voltage range is 1.0 to 1.5V. So with 2x AA size batteries, the voltage supply of the led is actually 2.0 to 3.0.<br />
It uses a Cree XP-G2 LED bulb with near 3.0V nominal voltage. Cree XP-G2 outputs 150 lumens with 350mA current drain and 300 lumens with 750mA current drain. <br />
The flashlight may use a booster converter to boost 2.0V~3.0V to 3V. The converter may have a decent efficiency near this range. <br />
At 300 lumens mode, the converter would draw more than 750mA from battery. Alkaline battery works terribly in this mode due to its discharging curve. Quoted from <a href="http://lygte-info.dk/review/batteries2012/CommonAAcomparator.php">http://lygte-info.dk/review/batteries2012/CommonAAcomparator.php</a><br />
<img alt="enter image description here" src="https://2.bp.blogspot.com/-t_4w9r59OJI/WHguBv0MD0I/AAAAAAAADJo/GpJx_sCaEAIOb2AYNECXruvX0vlDtYDXACLcB/s640/Capture.PNG" title="" /> <br />
With 1A current drain, Alkaline works much worse than Ni-Mh.<br />
At 100 lumens mode, the converter would draw more than 350mA. This is actually sweet region for Alkaline batt. Alkaline outperforms Ni-Mh for current drain below 300mA. <br />
<img alt="enter image description here" src="https://2.bp.blogspot.com/-b5hf1WsAgDI/WHgwNO9C54I/AAAAAAAADJw/tr9u5NShzNAn6TUeYwndfyF9IkTtfs3QgCLcB/s640/Capture.PNG" title="" /><br />
LD22 reaches a decent balance between Alkaline and Ni-Mh. AA size battery can be found everywhere and Alkaline delivers decent performances below 300 lumens mode. Ni-Mh battery covers pretty every mode and is favored in the manual. Eneloop is a perfect match for LD22. 2x count outputs good efficiency. Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-51353698064420489842016-04-28T00:05:00.003-04:002016-05-14T16:56:45.148-04:00History of Coroutine in Python<p>A coroutine is a kind of function that can suspend and resume its execution at various pre-defined locations in its code. Subroutines are a special case of coroutines that have just a single entry point and complete their execution by returning to their caller. Python’s coroutines (both the existing generator-based and the newly proposed variety) are not fully general, either, since they can only transfer control back to their caller when suspending their execution, as opposed to switching to some other coroutine as they can in the general case. When coupled with an event loop, coroutines can be used to do asynchronous processing, I/O in particular.</p>
<p>Python’s current coroutine support is based on the enhanced generators from <a href="https://www.python.org/dev/peps/pep-0342/">PEP 342</a>, which was adopted into Python 2.5. That PEP changed the yield statement to be an expression, added several new methods for generators (<code>send()</code>, <code>throw()</code>, and <code>close()</code>), and ensured that <code>close()</code> would be called when generators get garbage-collected. That functionality was further enhanced in Python 3.3 with PEP 380, which added the <code>yield from</code> expression to allow a generator to delegate some of its functionality to another generator (i.e. a sub-generator).</p>
<p>At first croutine is based on generator in Python. A generator is a function that produces a sequence of results instead of a single value. When a generator function is called, it returns a generator object without even beginning execution of the function. When next method is called for the first time, the function starts executing until it reaches yield statement. The yielded value is returned by the next call.</p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">yrange</span><span class="hljs-params">(n)</span>:</span>
i = <span class="hljs-number">0</span>
x = <span class="hljs-number">1</span>
<span class="hljs-keyword">while</span> i < n:
<span class="hljs-keyword">yield</span> i+x
<span class="hljs-comment">#return i and pause here waiting for instruction from caller.</span>
i += <span class="hljs-number">1</span>
<span class="hljs-keyword">if</span> __name__ = “__main__<span class="hljs-string">":
g = yrange(6)
print(next(g))</span></code></pre>
<p>Generator will return a value and pause there, all related context is the same when it is resumed again by <code>next()</code> method. Though at first generator is used to create memory-friendly iterator. But its characteristic is very suitable to realize a croutine.</p>
<p>Caller function can use <code>next()</code> as communication pipe to notice generator to run and generator will pause at yield and return value to caller.</p>
<p>But what if caller want to pass an input as parameter for generator to use during its run. E.g. generator provides HTML parsing function, while caller loads the content of a website and pass the content to generator to parse.</p>
<p>By using global variable, it is possible to do this. A modified version of code above:</p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">yrange</span><span class="hljs-params">(n)</span>:</span>
i = <span class="hljs-number">0</span>
<span class="hljs-keyword">global</span> x
<span class="hljs-keyword">while</span> i < n:
<span class="hljs-keyword">yield</span> i+x
<span class="hljs-comment">#return i and pause here waiting for instruction from caller.</span>
i += <span class="hljs-number">1</span>
<span class="hljs-keyword">if</span> __name__ = “__main__<span class="hljs-string">":
x = 1
g = yrange(6)
print(next(g))
x = 2
print(next(g))</span></code></pre>
<p>This solution is quite ugly because usually we want to avoid use of global variable. The safest way for programming is to pass value to function as parameter and return value to caller to avoid use state machine as a control mechanism.</p>
<p>Since Python 2.5, <code>yield</code> is changed as expression and behaves like a bidirectional communication tool. Generator has <code>send()</code>, <code>next()</code>, <code>throw()</code>, <code>close()</code> methods. </p>
<p>PEP342 gives a very detailed explanation about this:</p>
<blockquote>
<p>Specification Summary <br>
By adding a few simple methods to the generator-iterator type, and <br>
with two minor syntax adjustments, Python developers will be able <br>
to use generator functions to implement co-routines and other forms <br>
of co-operative multitasking. These methods and adjustments are:</p>
<ol>
<li><p>Redefine <code>yield</code> to be an expression, rather than a statement. <br>
The current <code>yield</code> statement would become a <code>yield</code> expression <br>
whose value is thrown away. A yield expression’s value is <br>
None whenever the generator is resumed by a normal <code>next()</code> call.</p></li>
<li><p>Add a new <code>send()</code> method for generator-iterators, which resumes <br>
the generator and “sends” a value that becomes the result of the <br>
current yield-expression. The <code>send()</code> method returns the next <br>
value yielded by the generator, or raises StopIteration if the <br>
generator exits without yielding another value.</p></li>
<li><p>Add a new <code>throw()</code> method for generator-iterators, which raises <br>
an exception at the point where the generator was paused, and <br>
which returns the next value yielded by the generator, raising <br>
StopIteration if the generator exits without yielding another <br>
value. (If the generator does not catch the passed-in exception, <br>
or raises a different exception, then that exception propagates <br>
to the caller.)</p></li>
<li><p>Add a <code>close()</code> method for generator-iterators, which raises <br>
<code>GeneratorExit</code> at the point where the generator was paused. If <br>
the generator then raises <code>StopIteration</code> (by exiting normally, or <br>
due to already being <code>closed)</code> or <code>GeneratorExit</code> (by not catching <br>
the exception), <code>close()</code> returns to its caller. If the generator <br>
yields a value, a <code>RuntimeError</code> is raised. If the generator <br>
raises any other exception, it is propagated to the caller. <br>
<code>close()</code> does nothing if the generator has already exited due to <br>
an exception or normal exit.</p></li>
<li><p>Add support to ensure that <code>close()</code> is called when a generator <br>
iterator is garbage-collected.</p></li>
<li><p>Allow <code>yield</code> to be used in <code>try/finally</code> blocks, since garbage <br>
collection or an explicit <code>close()</code> call would now allow the <br>
finally clause to execute.</p></li>
</ol>
</blockquote>
<p><code>yield</code> can not only pop a value to caller but also accept value from caller by <code>send()</code> method.</p>
<p><code>yield</code> expression is evaluated as None if <code>next()</code> is called. So basically <code>next()</code> equals <code>send(None)</code>.</p>
<p>Another example is as below:</p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">corout1</span><span class="hljs-params">(n)</span>:</span>
<span class="hljs-keyword">for</span> x <span class="hljs-keyword">in</span> range(n):
<span class="hljs-keyword">yield</span> x
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">jumping_range</span><span class="hljs-params">(up_to)</span>:</span>
<span class="hljs-string">"""Generator for the sequence of integers from 0 to up_to, exclusive.
Sending a value into the generator will shift the sequence by that amount.
"""</span>
index = <span class="hljs-number">0</span>
<span class="hljs-keyword">global</span> jump
<span class="hljs-keyword">while</span> index < up_to:
jump = <span class="hljs-keyword">yield</span> index
<span class="hljs-comment">#print('step is {0}'.format(jump))</span>
<span class="hljs-keyword">if</span> jump <span class="hljs-keyword">is</span> <span class="hljs-keyword">None</span>:
jump = <span class="hljs-number">1</span>
index += jump
<span class="hljs-keyword">if</span> __name__ == <span class="hljs-string">'__main__'</span>:
jump = <span class="hljs-keyword">None</span>
iterator = jumping_range(<span class="hljs-number">5</span>)
print(next(iterator)) <span class="hljs-comment"># 0</span>
print(<span class="hljs-string">'step is {0}'</span>.format(jump))
print(iterator.send(<span class="hljs-number">2</span>)) <span class="hljs-comment"># 2</span>
print(<span class="hljs-string">'step is {0}'</span>.format(jump))
print(next(iterator)) <span class="hljs-comment"># 3</span>
print(<span class="hljs-string">'step is {0}'</span>.format(jump))
print(iterator.send(-<span class="hljs-number">1</span>)) <span class="hljs-comment"># 2</span>
print(<span class="hljs-string">'step is {0}'</span>.format(jump))
<span class="hljs-keyword">for</span> x <span class="hljs-keyword">in</span> iterator:
print(x) <span class="hljs-comment"># 3, 4</span>
gen1 = corout1(<span class="hljs-number">6</span>)
print(next(gen1))
print(gen1.send(<span class="hljs-string">'sldf'</span>)) <span class="hljs-comment">#you can send any value</span></code></pre>
<p>Here I use global variable jump as a probe to detect the inner status of the generator. <br>
Output:</p>
<pre class="prettyprint"><code class="language-bash hljs ">In [<span class="hljs-number">1</span>]: run test2.py
<span class="hljs-number">0</span>
step is None
<span class="hljs-number">2</span>
step is <span class="hljs-number">2</span>
<span class="hljs-number">3</span>
step is <span class="hljs-number">1</span>
<span class="hljs-number">2</span>
step is -<span class="hljs-number">1</span>
<span class="hljs-number">3</span>
<span class="hljs-number">4</span>
<span class="hljs-number">0</span>
<span class="hljs-number">1</span></code></pre>
<p>Here <code>jump = yield index</code> is assignment of yield expression value to jump. If <code>next()</code> is called, yield index will be evaluated as <code>None</code> and generator will continue to run until it hits <code>yield</code> expression again. When the generator is paused, assignment won’t be conducted, the assignment of jump is the first step to be run for next iteration.</p>
<p>Now since <code>next()</code> equals <code>send(None)</code>, you can even avoid use of <code>next()</code> to keep consistence. Now <code>yield</code> expression behaviors like a transceiver, it first accept value from caller through <code>send()</code> method and when yield expression is hit again, it will throw the value in <code>yield</code> expression to its caller.</p>
<p>This should works fine as long as you fully understand the mechanism of <code>yield</code> in generator. </p>
<p>In <a href="https://www.python.org/dev/peps/pep-0380/">PEP380</a>, <code>yield from</code> is introduced to simplify pipeline of coroutines.</p>
<p>coroutine is not limited to communication only with its caller. It can also send data to another coroutine based input from its caller. This forms pipeline of coroutines. </p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">writer</span><span class="hljs-params">()</span>:</span>
<span class="hljs-string">"""A coroutine that writes data *sent* to it to fd, socket, etc."""</span>
z = <span class="hljs-string">'a'</span>
<span class="hljs-keyword">while</span> <span class="hljs-keyword">True</span>:
w = (<span class="hljs-keyword">yield</span> z)
z = chr(<span class="hljs-number">97</span>+w)
print(<span class="hljs-string">'>> '</span>, w)
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">filter</span><span class="hljs-params">(coro)</span>:</span>
coro.send(<span class="hljs-keyword">None</span>) <span class="hljs-comment"># prime the coro</span>
i = <span class="hljs-string">'hello'</span>
<span class="hljs-keyword">while</span> <span class="hljs-keyword">True</span>:
<span class="hljs-keyword">try</span>:
x = (<span class="hljs-keyword">yield</span> i) <span class="hljs-comment"># Capture the value that's sent</span>
i = coro.send(x) <span class="hljs-comment"># and pass it to the writer</span>
<span class="hljs-keyword">except</span> StopIteration:
<span class="hljs-keyword">pass</span>
<span class="hljs-keyword">if</span> __name__==<span class="hljs-string">"__main__"</span>:
g = writer()
f = filter(g)
print(f.send(<span class="hljs-keyword">None</span>)) <span class="hljs-comment">#prime f</span>
print(f.send(<span class="hljs-number">7</span>)) </code></pre>
<p>Output:</p>
<pre class="prettyprint"><code class="language-bash hljs ">In [<span class="hljs-number">16</span>]: run test3.py
hello
>> <span class="hljs-number">7</span>
h</code></pre>
<p>In order to capture exception, send data to coroutine and get result from coroutine, there are quite a bit of codes to handle.</p>
<p><code>yield from</code> will take take of exception handling, communication between coroutines, which simplify the code a lot.</p>
<p>Just like <code>yield</code>, <code>yield from</code> is bidirectional operation. A revised version using <code>yield from</code> is like below:</p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">writer</span><span class="hljs-params">()</span>:</span>
<span class="hljs-string">"""A coroutine that writes data *sent* to it to fd, socket, etc."""</span>
z = <span class="hljs-string">'a'</span>
<span class="hljs-keyword">while</span> <span class="hljs-keyword">True</span>:
w = (<span class="hljs-keyword">yield</span> z)
z = chr(<span class="hljs-number">97</span>+w)
print(<span class="hljs-string">'>> '</span>, w)
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">filter</span><span class="hljs-params">(coro)</span>:</span>
<span class="hljs-comment">#coro.send(None) # prime the coro</span>
i = <span class="hljs-string">'hello'</span>
i = <span class="hljs-keyword">yield</span> <span class="hljs-keyword">from</span> coro
<span class="hljs-keyword">if</span> __name__==<span class="hljs-string">"__main__"</span>:
g = writer()
f = filter(g)
print(f.send(<span class="hljs-keyword">None</span>)) <span class="hljs-comment">#prime f</span>
print(f.send(<span class="hljs-number">7</span>))</code></pre>
<p>Output:</p>
<pre class="prettyprint"><code class="language-bash hljs ">In [<span class="hljs-number">18</span>]: run test4.py
a
>> <span class="hljs-number">7</span>
h</code></pre>
<p>As you can see, it is much easier to organize coroutine code with <code>yield from</code> keyword.</p>
<p>generator based coroutine together with event loop bring ability for async programming.</p>
<p>It is possible to use return in generator.</p>
<blockquote>
<p>This is a new feature in Python 3.3 (as a comment notes, it doesn’t even work in 3.2). Much like return in a generator has long been equivalent to raise <code>StopIteration()</code>, return something in a generator is now equivalent to raise <code>StopIteration</code>(something). For that reason, the exception you’re seeing should be printed as <code>StopException</code>: 3, and the value is accessible through the attribute value on the exception object. If the generator is delegated to using the (also new) <code>yield from</code> syntax, it is the result. See PEP 380 for details.</p>
</blockquote>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">f</span><span class="hljs-params">()</span>:</span>
<span class="hljs-keyword">return</span> <span class="hljs-number">1</span>
<span class="hljs-keyword">yield</span> <span class="hljs-number">2</span>
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">g</span><span class="hljs-params">()</span>:</span>
x = <span class="hljs-keyword">yield</span> <span class="hljs-keyword">from</span> f()
print(x)
g() <span class="hljs-comment"># prints 1</span></code></pre>
<p>Generator based coroutine is kind of confusing in terms of grammar. It is quite hard to understanding the bidirectional communication mechanism of <code>yield/yield from</code> without some deep introduction like this article. And generator is first introduced to bring one at a time iterator concept, then yield is revised to make generator suitable for coroutine concept.</p>
<p><code>async/await</code> keywords are introduced since Python 3.5 to make grammar of coroutine programming more meaningful. <code>await</code> equals <code>yield from</code>. So you can either use generator based coroutine or <code>async/await</code> defined coroutine for async/concurrency environment.</p>
<h4 id="non-blocking-program-in-python">Non-blocking program in Python</h4>
<p>Async programming is often related with I/O bound or CPU bound tasks. I/O bound task means the code will wait for reading data from another process or thread for quite a time such as page content sent back from server or file content sent back from disk I/O program. CPU bound task often the code waits for results from another process that does heavy computing task.</p>
<p>So async programming naturally contains communications between different processes(thread is not efficient due to GIL). Current running coroutine will pause at where results are needed from another process. Then event loop will take control and send signal to another coroutine to run. </p>
<p>So the coroutine has to be non-blocking, which means it needs to check the status of outer process. If the results is ready, then it will run some code to process the results, otherwise it will yield again to give up the running privilege. The outer process has to be able to provide running status, so that the coroutine can be written in non-blocking style.</p>
<p>It is possible to mimic the async programming through subprocess module. The subprocess module can spawn a process from current process, which is executed independent from current process and can be used to mimic the process of loading content from a remote server or reading data from local disk.</p>
<p><strong>server_subp.py</strong> simply sleep n seconde and print ‘finished’ as result. When client get the response from server,</p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-keyword">import</span> sys
<span class="hljs-keyword">import</span> time
<span class="hljs-keyword">if</span> __name__ == <span class="hljs-string">'__main__'</span>:
n = int(sys.argv[<span class="hljs-number">1</span>])
time.sleep(n)
print(<span class="hljs-string">'finished!'</span>)</code></pre>
<p><strong>client_subp.py</strong></p>
<pre class="prettyprint"><code class="language-python hljs "><span class="hljs-keyword">import</span> subprocess
<span class="hljs-keyword">import</span> time
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">nb_read</span><span class="hljs-params">(t)</span>:</span>
process = subprocess.Popen([<span class="hljs-string">'python3'</span>, <span class="hljs-string">'server_subp.py'</span>, t], shell=<span class="hljs-keyword">False</span>, stdin=subprocess.PIPE, stdout=subprocess.PIPE, universal_newlines=<span class="hljs-keyword">True</span>)
<span class="hljs-keyword">while</span> process.poll() <span class="hljs-keyword">is</span> <span class="hljs-keyword">None</span>:
<span class="hljs-keyword">yield</span> <span class="hljs-keyword">None</span>
<span class="hljs-keyword">yield</span> process.communicate()
task1 = nb_read(<span class="hljs-string">'5'</span>)
task2 = nb_read(<span class="hljs-string">'3'</span>)
fin1 = <span class="hljs-keyword">False</span>
fin2 = <span class="hljs-keyword">False</span>
<span class="hljs-keyword">while</span> <span class="hljs-number">1</span>:
<span class="hljs-keyword">if</span> <span class="hljs-keyword">not</span> fin1:
res1 = task1.send(<span class="hljs-keyword">None</span>)
<span class="hljs-keyword">if</span> res1 != <span class="hljs-keyword">None</span>:
print(<span class="hljs-string">'task1:'</span>+res1[<span class="hljs-number">0</span>])
fin1 = <span class="hljs-keyword">True</span>
task1.close()
<span class="hljs-keyword">else</span>:
print(<span class="hljs-string">'still working on task1'</span>)
<span class="hljs-keyword">if</span> <span class="hljs-keyword">not</span> fin2:
res2 = task2.send(<span class="hljs-keyword">None</span>)
<span class="hljs-keyword">if</span> res2 != <span class="hljs-keyword">None</span>:
print(<span class="hljs-string">'task2:'</span>+res2[<span class="hljs-number">0</span>])
fin2 = <span class="hljs-keyword">True</span>
task2.close()
<span class="hljs-keyword">else</span>:
print(<span class="hljs-string">'still working on task2'</span>)
<span class="hljs-keyword">if</span> fin1==<span class="hljs-keyword">True</span> <span class="hljs-keyword">and</span> fin2==<span class="hljs-keyword">True</span>:
<span class="hljs-keyword">break</span>
time.sleep(<span class="hljs-number">1</span>)
<span class="hljs-comment">#process.terminate()</span></code></pre>
<p><code>nb_read()</code> is a non-blocking style coroutine to load data. It will spawn a process to read data. <code>subprocess.poll()</code> is the method to poll status from sub process. It the return value is None, then <code>nb_read()</code> will yield None to notify caller data loading is not finished yet and pauses there. Otherwise, <code>nb_read()</code> will use <code>subprocss.communicate()</code> to retrieve stdout content from sub process and terminate the process.</p>
<p>The <code>while 1</code> loop is used to mimic event loop in asyncio library. It will create two generators of <code>nb_read()</code> and query if they have finished loading data. If so, it will close the generator. The loop will continue to run unless all reading tasks are finished. The loop use <code>send(None)</code> to inform the generator that you can run now.</p>
<p>That is the reason that why the generator based coroutine has to be decorated by <code>@asyncio.coroutine</code>.</p>
<p>Output of the <strong>client_subp.py</strong>:</p>
<pre class="prettyprint"><code class="language-bash hljs ">still working on task1
still working on task2
still working on task1
still working on task2
still working on task1
still working on task2
still working on task1
still working on task2
still working on task1
task2:finished!
still working on task1
task1:finished!</code></pre>
<p><strong>Reference:</strong> <br>
<a href="https://docs.python.org/3/whatsnew/3.3.html">What is new in Python 3.3</a> <br>
<a href="https://www.python.org/dev/peps/pep-0380/">PEP380</a> <br>
<a href="http://stackoverflow.com/questions/9708902/in-practice-what-are-the-main-uses-for-the-new-yield-from-syntax-in-python-3">In practice, what are the main uses for the new “yield from” syntax in Python 3.3?</a> <br>
<a href="https://www.python.org/dev/peps/pep-0342/">PEP342</a> <br>
<a href="http://www.snarky.ca/how-the-heck-does-async-await-work-in-python-3-5">How the heck does async/await work in Python 3.5?</a></p>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-55995858523760917412016-04-16T23:02:00.001-04:002017-02-22T21:23:47.304-05:00How to build a cross compliatio enviroment for arm based SBCIt always painful to compile programs for arm-based single board computer such as odroid. This tutorial is aimed to build up a cross compiling system for arm-based programs.<br />
<br />
My computer has x64 OpenSuse Tumbleweed installed and the target is to install an armhf(armv7l) ubuntu 14.04 chroot system in it. There will be two sections:<br />
<br />
I. use docker to install a ubuntu x64 14.04 container.<br />
II. build up the chroot system inside the ubuntu docker container.<br />
<br />
<h2>
Section I: install ubuntu 14.04 x64 in a docker container.</h2>
OpenSuse's document about chroot is quite limited. HDL:chroot describes how to chroot into an armv7 opensuse build from x64 opensuse host. You barely can find any useful documents about how to chroot into an armv7 ubuntu build from x64 opensuse host. I have tried a lot and finally given up the idea to chroot armv7 ubuntu from x64 opensuse host. In terms of documentation and stability, ubuntu is the best linux distro for non advanced users.<br />
<br />
if you have a x64 ubuntu host, can you skip this section.<br />
<br />
Instead I installed a x64 ubuntu container through docker in the x64 opensuse host and use the x64 ubuntu as host to chroot into an armv7 ubuntu.<br />
<br />
The container concept in docker is a bit like the virtual machine though some evaluations from IBM said it has almost the same performances as physical machine in most area. also I have no intent to install a ubuntu os just for compiling purpose. So docker is a good choice compared with virtual machine.<br />
<br />
the first step is to install docker:<br />
<pre><code class="bash">sudo zypper in docker</code></pre>
<br />
there are all kinds of system containers hosted on docker-hub. It is very simple to create a container.<br />
You can "docker search keyword" to search the images whose names contain keyword.<br />
<br />
In my case, it is as below:<br />
<pre><code class="bash">docker search ubuntu</code></pre>
<pre><div class="res">
ubuntu Ubuntu is a Debian-based Linux operating s... 3672 [OK]
ubuntu-upstart Upstart is an event-based replacement for ... 61 [OK]
torusware/speedus-ubuntu Always updated official Ubuntu docker imag... 25 [OK]
ubuntu-debootstrap debootstrap --variant=minbase --components... 24 [OK]
rastasheep/ubuntu-sshd Dockerized SSH service, built on top of of... 23 [OK]
nickistre/ubuntu-lamp LAMP server on Ubuntu 6 [OK]
nickistre/ubuntu-lamp-wordpress LAMP on Ubuntu with wp-cli installed 5 [OK]
nimmis/ubuntu This is a docker images different LTS vers... 4 [OK]
nuagebec/ubuntu Simple always updated Ubuntu docker images... 4 [OK]
maxexcloo/ubuntu Docker base image built on Ubuntu with Sup... 2 [OK]
sylvainlasnier/ubuntu Ubuntu 15.10 root docker images with commo... 2 [OK]
darksheer/ubuntu Base Ubuntu Image -- Updated hourly 1 [OK]
admiringworm/ubuntu Base ubuntu images based on the official u... 1 [OK]
jordi/ubuntu Ubuntu Base Image 1 [OK]
rallias/ubuntu Ubuntu with the needful 0 [OK]
lynxtp/ubuntu https://github.com/lynxtp/docker-ubuntu 0 [OK]
life360/ubuntu Ubuntu is a Debian-based Linux operating s... 0 [OK]
esycat/ubuntu Ubuntu LTS 0 [OK]
widerplan/ubuntu Our basic Ubuntu images. 0 [OK]
teamrock/ubuntu TeamRock's Ubuntu image configured with AW... 0 [OK]
webhippie/ubuntu Docker images for ubuntu 0 [OK]
konstruktoid/ubuntu Ubuntu base image 0 [OK]
ustclug/ubuntu ubuntu image for docker with USTC mirror 0 [OK]
suzlab/ubuntu ubuntu 0 [OK]
uvatbc/ubuntu Ubuntu images with unprivileged user 0 [OK]
</div>
</pre>
By using "docker pull ubuntu:version", you can download the corresponding image to you local drive.<br />
<pre><code class="bash">docker pull ubuntu:latest</code></pre>
<br />
#it displays all images pulled from docker-hub.<br />
<pre><code class="bash">docker images</code></pre>
<pre><div class="res">
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest b72889fa879c 3 days ago 187.9 MB
armv7/armhf-ubuntu 14.04.3 73915db97566 8 months ago 184.9 MB
</div>
</pre>
#delete the cached image by specifying IMAGE_ID.<br />
<pre><code class="bash">docker rmi IMAGE_ID</code></pre>
<br />
Now since you have the image, it is possible to create a container though "docker run"<br />
<pre><code class="bash">docker run -it --privileged --name ubuntu ubuntu /bin/bash</code></pre>
<i>#-it means tty interactive </i><br />
<i>#docker disables many system level operations by default. In my case, I need "--privileged" option to bring full control to the container in order to mount and install qemu-user-static.</i><br />
<i>#--name option is used to specify a name to the container for easy reference.</i><br />
<i>#/bin/bash tells docker to use /bin/bash as interpreter.</i><br />
<br />
after running that command, you should see the container is created and it enters the container like ssh.<br />
You can use "uname -a" to confirm it.<br />
<br />
type "exit" to exit from the container.<br />
<br />
<pre><code class="bash">docker ps -a</code></pre>
<pre><div class="res">
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
748f592e387b ubuntu "/bin/bash" 2 hours ago Up 2 hours ubuntu</div>
</pre>
You can see the container is still on<br />
<br />
<i>#stop the container from running</i> <br />
<pre><code class="bash">docker stop ubuntu</code></pre>
<br />
Now you need to re-enter into the container.<br />
<pre><code class="bash">docker start ubuntu
docker exec -it ubuntu /bin/bash</code></pre>
<br />
It is easy to share files between host and container.<br />
<pre><code class="bash">docker cp host_file ubuntu:path
docker cp ubuntu:file host path</code></pre>
<i>#here ubuntu is the container's name, ":path" is the target path inside the container.</i><br />
<br />
Up to now, the ubuntu container is set. The command grammars of docker is also very elegant and easy to use. We will move to section 2. You can also use the container as the test environment of x64 ubuntu.<br />
<br />
<h2>
Section II set up a chroot env for armv7 ubuntu</h2>
make sure you enters into ubunut container. commands below are executed in the container.<br />
<pre><code class="bash">cd /opt
mkdir rootfs
sudo apt-get install debootstrap schroot qemu qemu-user-static</code></pre>
<br />
<span style="color: #cc0000;"><b>If there is warning message says:</b></span><br />
<span style="color: #cc0000;"><b>update-binfmts: warning: Couldn't load the binfmt_misc module.</b></span><br />
<span style="color: #cc0000;"><b>That is because in latest ubuntu, binfmt_misc is not mounted properly. Using following command to mount binfmt_misc first:</b></span><br />
<pre><code class="bash">mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc/</code></pre>
<br />
<i>#install the necessary packages to build a chroot env.</i><br />
<pre><code class="bash">debootstrap --verbose --variant=buildd --foreign --include=iproute,iputils-ping --arch armhf trusty ./rootfs http://ports.ubuntu.com/ubuntu-ports/</code></pre>
<i>#ports.ubuntu.com/ubuntu-ports hold all arm based dists.</i><br />
<i>#--foreigh options is needed for different arch chroot</i><br />
<i>#--arch armhf armv7 arch, choose different arch if it is arm64.</i><br />
<i>#trusty means ubuntu 14.04 release.</i><br />
<i>#--include specify addtional packages out of standard release.</i><br />
<br />
Cited from https://wiki.ubuntu.com/ARM/RootfsFromScratch/QemuDebootstrap#Creating_a_filesystem_from_a_directory<br />
<u><i>QEMU sports two types of emulation:<br /><br /> syscall emulation: this translates code from one architecture to another, remapping system calls (calls to the kernel) between the two architectures<br /><br /> machine emulation: this emulates a complete computer, including a virtual CPU, a virtual video card, a virtual clock, a virtual SCSI controller etc. <br /><br /> QEMU's syscall emulation is much faster than machine emulation, but both are relatively slow when compared to native programs for your computer. One major drawback of syscall emulation is that it that some syscalls are not emulated, so some programs might now work, also when building programs, these might configure themselve for the features of the kernel they run on instead of what the target architecture actually supports.<br /><br /> For rootfs creation, using syscall emulation is probably fine for core packages, but you might run into issues with higher level ones.<br /><br /> Using syscall emulation<br /><br /> While qemu-arm can be used to run a single armel binary from the command-line, it's impractical to use it to run a program which will fork and execute other programs. Also, because qemu-arm itself uses shared libraries and the ld.so dynamic linker/loader from the build environment, it's impractical to copy it in the rootfs to use it with chroot-ed programs. So the following instructions expect that you're using a static version of qemu-arm ("qemu-arm-static"), and that your build environment supports the binfmt-misc module, this modules allows running any executable matching some configured pattern with an interpreter of your choice.</i></u><br />
<br />
<pre><code class="bash">cat /proc/sys/fs/binfmt_misc/qemu-arm</code></pre>
<i>#verify qemu-arm interpreter is register in the container system.</i><br />
<br />
Because we're going to chroot into the rootfs directory, the kernel will look for the interepreter in the chroot; copy the interpreter in the chroot:<br />
<pre><code class="bash">cp /usr/bin/qemu-arm-static rootfs/usr/bin</code></pre>
<br />
before the chroot, several commands needs to be run to bring up network to chroot env.<br />
<pre><code class="bash">mount -o bind /dev rootfs/dev
mount -o bind /dev/pts rootfs/dev/pts
mount -o bind /proc rootfs/proc
mount -o bind /sys rootfs/sys
cp /etc/resolv.conf rootfs/etc/resolv.conf</code></pre>
<br />
now you can chroot into the armv7 ubuntu 14.04<br />
<pre><code class="bash">chroot rootfs /bin/bash
/debootstrap/debootstrap --second-stage</code></pre>
<br />
<pre><code class="bash">uname -a</code></pre>
<i>#check if the system is armv7 arch</i><br />
<br />
<i>#configure system(optional)</i><br />
<pre><code class="bash">locale-gen en_US.UTF-8
locale-gen zh_CN.UTF-8
dpkg-reconfigure locales
export LC_ALL="en_US.UTF-8"</code></pre>
It looks any modification to change the locale in the chroot env won't take effect. Since I only want to use this env to compile programs. So my lazy solution is just to manually export LC_ALL each time.<br />
<br />
<i>#add ubuntu repo</i><br />
<pre><code class="bash">echo "deb http://ports.ubuntu.com/ trusty main restricted universe multiverse" > /etc/apt/sources.list
echo "deb http://ports.ubuntu.com/ trusty-security main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb http://ports.ubuntu.com/ trusty-updates main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb http://ports.ubuntu.com/ trusty-backports main restricted universe multiverse" >> /etc/apt/sources.list</code></pre>
<br />
<i>#update system</i><br />
<pre><code class="bash">apt-get update
apt-get upgrade</code></pre>
<br />
every time when the docker container is stopped, it looks like docker will clean up the content inside /proc/sys/fs/binfmt_misc. You need to run<br />
<pre><code>update-binfmts --import </code></pre>
to bring the qemu-arm registration back. <br />
<br />
In the end, you can compile a program to make sure the cross compiling system is OK.<br />
<br />
phantomjs might be a good example because its dependencies are quite complex though the compiling time is very long.<br />
<br />
following the instructions in http://phantomjs.org/build.html<br />
<br />
git crashes in the chroot env. So my solution is to git the src in the container and move that into rootfs.<br />
<br />
it takes around 7-8 hours on my 16GB RAM and quad core HT CPU computer, which i think is pretty good considering three layer stacking structure. <br />
<br />
Enjoy!<br />
<br />
If you want to exit the chroot env. You can type "exit" twice to come back all the way to x64 opensuse host.Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com1tag:blogger.com,1999:blog-4373516896767983050.post-18693847776973156702016-03-27T23:41:00.000-04:002016-04-07T22:25:43.819-04:00Bottle UWSGI Nginx Configuration<b>Preface:</b><br />
Before starting to read this article, you should know basically this article is a "fork" of Michael Lustfield's article Bottle + UWSGI + Nginx Quickstart.<br />
<br />
The reason I want to modify this article is because I think it will be more beneficial if I add more notes I found during building up the whole server. Also I prefer another way to configure uwsgi from the scratch.<br />
<b><br /></b>
<b>Introduction</b><br />
Bottle is a Python micro framework easy for deployment though its built-in http server has poor performance and support for https is not easy to implement. In the other side, Nginx is a high performance server software and can be easily configured to support https. But Nginx cannot speak Python. In order to support Python based micro framework, uwsgi is needed as midware to translate Python script to Nginx. <br />
<br />
<b>Installing Stuff</b><br />
I'm going to be assuming the use of Ubuntu 14.04 and python3 and also you have good knowledge about Linux bash and Python. It's easy enough to adjust.<br />
<pre><code class="bash">apt-get install nginx
pip3 install uwsgi
pip3 install bottle
</code></pre>
pip3 command ensures you getting the latest uwsgi and bottle releases.<br />
<br />
<b>Privilege</b><br />
Before continue to detailed setup.You should know privileges regarding nginx, uwsgi, and bottle.<br />
<br />
If you want to use unix socket file as a tunnel for communication between nginx and uwsgi, you have to make sure both nginx and uwsgi have write/read privileges to the shared socket. <br />
<br />
Usually nginx belongs to www-data group. So it is suggested to add current user to www-data group.<br />
<pre><code class="bash">usermod -a -G www-data %username</code></pre>
%username is your linux user name.<br />
<br />
If you get "502 bad gateway" errors while you think configurations are OK, try to use "ls -l" to verify if the socket is writable to www-data group.<br />
<br />
<b>Your First Bottle Application</b><br />
I tend to start with a basic structure:<br />
<pre><code class="bash">/var/www/bottle/
plugins/
__init__.py
static/
css/
files/
images/
js/
views/
base.tpl
page.tpl
app.py
</code></pre>
Whether I have anything in the directories or not, they exist. It's just how I make sure I keep things consistent across applications.<br />
<br />
Don't forgtet to run:<br />
<pre><code class="bash">chown -R www-data:www-data /var/www
#change user and group of folder which contains bottle micor-framework to www-data.
mkdir /run/uwsgi
chown -R www-data:www-data /run/uwsgi
#/run/uwsgi/sock is unix socket file that is going to be used by uwsgi loader in order to communicate with nginx.
</code></pre>
A basic skeleton of app.py will look something like this:<br />
<pre><code class="python">#!/usr/bin/python
'''
A basic bottle app skeleton
'''
from bottle import route, template
@route('/static/')
def static(filename):
'''
Serve static files
'''
return bottle.static_file(filename, root='./static')
@route('/')
def show_index():
'''
The front "index" page
'''
return 'Hello'
@route('/page/')
def show_page(page_name):
'''
Return a page that has been rendered using a template
'''
return template('page', page_name=page_name)
if __name__ == '__main__':
bottle.run(host="0.0.0.0", port=8080)
else
app = application = bottle.default_app()
"""why you needs app = application = ... in uwsgi mode?
because by default, uwsgi loader search for app or application when it looks into a python script.
if it is a Flask deployment, use app = Flask(__name__) instead."""
</code></pre>
Try it out!:<br />
<pre><code class="bash">python3 app.py
</code></pre>
You'll see the application start running. Go to example.com:8080/. Neat, huh?<br />
<br />
<b>The Templating System</b><br />
Bottle has a bunch of templating options. For now, we're only going to touch the most basic option.<br />
views/page.tpl:<br />
<pre><code class="html">You are visiting {{page_name}}!
%rebase base
</code></pre>
views/base.tpl:<br />
<xmp><html dir="ltr" lang="en">
<head>
<title>My Site!</title>
</head>
<body>
<div id="pagebody">
%include
</div>
</body>
</html>
</xmp>
This is obviously very basic, but it will get you started. Check out the Bottle Docs for more information. The templating options are endless!<br />
Now that you have this done, restart app.py and visit example.com:8080/page/foo. You should be seeing a rather blank looking page that says "You are visiting foo" with the title "My Site!"<br />
<br />
<b>Adding UWSGI</b><br />
The UWSGI configuration is pretty simple. See the UWSGI Docs for more details information.<br />
Edit /var/www/bottle/uwsgi.ini:<br />
<pre><code class="uwsgi">[uwsgi]
socket = /run/uwsgi/sock
;;for bottle, it is safe to use socket protocol.
chdir = /var/www/bottle
master = true
plugins = python
;;plugins are built python*.so libary for uwsgi.
;plugins-dir = path
;;specify python plugins by plugins-dir if you want it.
file = app.py
;;specify the python file to be used by uwsgi.
;;suppose there are app1.py app2.py app3.py all contains app routine.
;;it is possible to use "mount" to define different routines to handle different page requests.
;mount = /app1=app1.py
;mount = /app2=app2.py
;mount = /app3=app3.py
;;generally flask/bottle apps expose the 'app' callable instead of 'application'
;callable = app
;;tell uWSGI to rewrite PATH_INFO and SCRIPT_NAME according to mount-points
manage-script-name = true
;chmod-socket=664
uid = www-data
gid = www-data
;;specify uid and gid, assuming /www/var belongs to www-data:www-data. it is better to run uwsgi in non-root mode.
;pythonpath = ..
;;specify python path.
;processes = 4
;thread = 2
;stats = 127.0.0.1:9191
</code></pre>
<pre><code class="bash">uwsgi --ini uwsgi.ini
</code></pre>
You should see some logging information.<br />
<br />
<b>Adding Nginx</b><br />
I prefer using the /etc/nginx/sites-enable directory for my configurations. You can do as you wish on your server.<br />
Edit /etc/nginx/sites-enable/default:<br />
<pre><code class="nginx">upstream _bottle {
server unix:/run/uwsgi/sock;
}
#upstream defines common block that can be shared by different derivatives.
server {
listen [::]:80;
listen 80;
server_name localhost;
#make sure it is accessible through localhost
root /var/www/bottle;
location / {
try_files $uri @uwsgi;
#try files will try to load $uri, if it does not exist, then @uwsgi will be called instead.
}
location @uwsgi {
include uwsgi_params;
#include uwsgi parameters.
uwsgi_pass _bottle;
#tell nginx to communicate with uwsgi though unix socket /run/uwsgi/sock.
}
}
#it is possible to configure this server to https as long as you get certification from letsencrypt. Search nginx + letsencrypt for necessary info if you are interested.
</code></pre>
<br />
In our bottle application, we defined a route for static content. However, it's better to have nignx serve this data so that we can avoid making python do any work. That's why we use try_files in the location block. You want that in your bottle application for development, but when we deploy, it won't actually get used.<br />
Then restart the service:<br />
<pre><code class="bash">nginx -s reload
</code></pre>
You'll now be able to access your bottle application from the internet through nginx.<br />
In fact it is possible to verify it though command:<br />
<pre><code class="bash">curl localhost:80
w3m localhost:80
</code></pre>
<br />
<b>start uwsgi as service</b><br />
It is possible to run uwsgi on boot with upstart.<br />
<pre><code class="bash">mkdir /etc/uwsgi
ln -s /path/to/uwsgi.ini uwsgi.ini
</code></pre>
create /etc/init/uwsgi.conf,<br />
<pre><code class="conf"># Emperor uWSGI script
description "uWSGI Emperor"
start on runlevel [2345]
stop on runlevel [06]
respawn
exec uwsgi --master --die-on-term --emperor /etc/uwsgi
</code></pre>
done!<br />
<br />
upstart will call uwsgi in emperor mode, then uwsgi will create its service based on ini file.<br />
<br />
When you want to restart uwsgi process after modifying the python file, never use the "touch-reload" like option from uwsgi. This process could be bugy, you may find it won't work at all and create all kinds of problems. Don't waste your time. Use following commands instead:<br />
<pre><code class="bash">initctl stop uwsgi
initctl start uwsgi
</code></pre>
the first command ensures uwsgi service is fully stopped.<br />
and the second command will start uwsgi service again.<br />
<br />Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-42275988544539134112015-06-27T15:10:00.002-04:002015-06-27T15:10:56.800-04:00odroid入门安装odroid系统ubuntu 14.04在sd卡上,首先还是要确定sd卡的erase block size等参数来确定分区参数。这里使用的是sony的sr32uya/tqmn。<br />
weiyuan@linux-lnhx:~/Downloads/flashbench-linaro> sudo ./flashbench -a /dev/sdb --blocksize=1024<br />
align 8589934592 pre 613µs on 795µs post 636µs diff 170µs<br />
align 4294967296 pre 599µs on 797µs post 627µs diff 184µs<br />
align 2147483648 pre 603µs on 754µs post 628µs diff 138µs<br />
align 1073741824 pre 602µs on 762µs post 635µs diff 143µs<br />
align 536870912 pre 604µs on 760µs post 630µs diff 143µs<br />
align 268435456 pre 606µs on 756µs post 639µs diff 134µs<br />
align 134217728 pre 595µs on 766µs post 642µs diff 147µs<br />
align 67108864 pre 598µs on 761µs post 636µs diff 144µs<br />
align 33554432 pre 609µs on 768µs post 642µs diff 142µs<br />
align 16777216 pre 597µs on 751µs post 628µs diff 138µs<br />
align 8388608 pre 596µs on 769µs post 653µs diff 145µs<br />
align 4194304 pre 593µs on 762µs post 638µs diff 147µs<br />
align 2097152 pre 588µs on 755µs post 650µs diff 135µs<br />
align 1048576 pre 599µs on 765µs post 645µs diff 143µs<br />
align 524288 pre 597µs on 768µs post 648µs diff 145µs<br />
align 262144 pre 591µs on 748µs post 637µs diff 134µs<br />
align 131072 pre 597µs on 758µs post 649µs diff 135µs<br />
align 65536 pre 575µs on 732µs post 639µs diff 125µs<br />
align 32768 pre 580µs on 734µs post 628µs diff 130µs<br />
align 16384 pre 585µs on 732µs post 623µs diff 128µs<br />
align 8192 pre 655µs on 663µs post 649µs diff 11µs<br />
align 4096 pre 693µs on 700µs post 687µs diff 9.71µs<br />
align 2048 pre 721µs on 724µs post 711µs diff 8.34µs<br />
<br />
Erase block size is 4M from the results and sony sd card does show quite goood speed compared with previous card.<br />
<br />
we cannot simply write the img file of ubuntu simply to the sd card.<br />
<br />Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-49580986949999437682015-02-26T17:04:00.001-05:002015-02-28T13:56:43.840-05:00beaglebone black简单入门(三)在这一章中将详细介绍sd卡的分区,格式化和挂载。为什么要这么深入的研究,因为sd卡和emmc所用的flash颗粒是有wear leveling的,现有的操作系统对于如何格式化和访问flash并无很成熟的方案,所以默认的格式化方案对于flash的访问速度和lift time来说并不是最优方案。好的配置可以提高sd卡的读写性能及延长使用寿命。因此仔细的规划sd的格式是非常值得研究的。<br />
<br />
flash的一些背景知识:<br />
http://en.wikipedia.org/wiki/Flash_memory<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-1-introduction-and-table-of-contents/<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-2-architecture-of-an-ssd-and-benchmarking/<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-3-pages-blocks-and-the-flash-translation-layer/<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-4-advanced-functionalities-and-internal-parallelism/<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-5-access-patterns-and-system-optimizations/<br />
http://codecapsule.com/2014/02/12/coding-for-ssds-part-6-a-summary-what-every-programmer-should-know-about-solid-state-drives<br />
<br />
所以在一个flash的存储介质中,一般来说其内部架构如下图所示:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-WjnWb6_50Hs/VO-WhR0FJeI/AAAAAAAADA4/ORziHIx8PPI/s1600/ssd-package.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-WjnWb6_50Hs/VO-WhR0FJeI/AAAAAAAADA4/ORziHIx8PPI/s1600/ssd-package.jpg" /></a></div>
一个sd的封装可能包含N个chip,每个chip中还有若干个plane,其中每个plane中又包含若干erase block, 每个erase block还包含若干个page。<br />
<br />
其中page是flash的最小读写单位,而flash的特殊之处在于其写入前需要erase整个erase block,将其中的bit全重置为1。也就是说读操作是可以直接读一个page的信息,但是写入时,哪怕只有一个page的信息,也需要erase掉整个block。<br />
<br />
从图中也可以看出,并行的chip,同一chip上并行的plan其实是可以同时读写的,这个读写单位在图中叫做clustered block。这和磁盘RAID阵列其实概念非常相近。后面再解释ext4参数时会用到这个概念。<br />
<br />
从上面的flash的基本定义,可以看出来,在format的过程中,需要知道sd卡的page,erase block size,和plane等信息才能给出正确的format参数,因为fdisk等工具默认的最小读写unit是512字节,这是旧时代老硬盘的标准,现代硬盘的标准簇实际上已经是4K了,而SD卡等flash介质的的page,erase block size都是不确定的,很难找到官方的标准。<br />
<br />
这就需要flashbench这个工具了。<br />
它的工具原理和使用方法见<br />
https://wiki.linaro.org/WorkingGroups/KernelArchived/Projects/FlashCardSurvey?highlight=%28FlashCardSurvey%29<br />
http://lists.linaro.org/pipermail/flashbench-results/2012-June/000300.html<br />
从以下网址下载安装<br />
https://github.com/bradfa/flashbench<br />
用git clone下载后,进入文件夹sudo make来编译<br />
编译完成后就可以使用了,建议认真阅读readme来学习使用方法。<br />
<br />
以我买的scandisk 32G ultra microSDHC(SDSDQU-032G-AFFP-A)为例,这是一款32G的sd卡。<br />
<div>
<br /></div>
<div>
首先查看emmc和sd卡的设备信息。</div>
<div>
sudo udevadm info -a -n /dev/mmcblk1可以看到emmc的信息</div>
<div>
ATTR{size}=="7667712"</div>
<div>
<div>
ATTRS{preferred_erase_size}=="2097152"</div>
<div>
ATTRS{erase_size}=="2097152"<br />
<br />
sudo udevadm info -a -n /dev/mmcblk0查看<br />
ATTR{size}=="62333952"<br />
ATTRS{preferred_erase_size}=="4194304"<br />
ATTRS{fwrev}=="0x0"<br />
ATTRS{hwrev}=="0x8"<br />
ATTRS{oemid}=="0x5344"<br />
ATTRS{manfid}=="0x000003"<br />
ATTRS{serial}=="0x228e4f3e"<br />
ATTRS{erase_size}=="512"</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
可以看到emmc的erase size是2M,其大小是7667712*512byte,折合大小约3.65625GB。<br />
使用flashbench来测试一下,可以看见速度差的突变发生在1048576(1MB)和2097152(2MB)之间,这和读取的preferred_erase_size是吻合的。</div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk1 --count=20<br />
[sudo] password for beaglebone:<br />
align 1073741824 pre 1.97ms on 2.36ms post 1.75ms diff 502µs<br />
align 536870912 pre 2.32ms on 2.8ms post 2.13ms diff 570µs<br />
align 268435456 pre 2.58ms on 2.85ms post 2.2ms diff 464µs<br />
align 134217728 pre 1.95ms on 2.5ms post 2.31ms diff 368µs<br />
align 67108864 pre 2.04ms on 2.54ms post 2.15ms diff 441µs<br />
align 33554432 pre 2.13ms on 2.62ms post 2.15ms diff 480µs<br />
align 16777216 pre 2.1ms on 2.63ms post 2.24ms diff 462µs<br />
align 8388608 pre 2.14ms on 2.64ms post 2.17ms diff 481µs<br />
align 4194304 pre 2.1ms on 2.63ms post 2.2ms diff 474µs<br />
align 2097152 pre 2.07ms on 2.56ms post 2.12ms diff 464µs<br />
align 1048576 pre 2.11ms on 2.23ms post 2.25ms diff 52.5µs<br />
align 524288 pre 2.15ms on 2.18ms post 2.21ms diff -6226ns<br />
align 262144 pre 2.16ms on 2.18ms post 2.2ms diff -1092ns<br />
align 131072 pre 2.17ms on 2.17ms post 2.2ms diff -9687ns<br />
align 65536 pre 2.15ms on 2.18ms post 2.21ms diff 611ns<br />
align 32768 pre 2.16ms on 2.18ms post 2.22ms diff -5497ns<br />
但是还不能看出page的大小,指定读取unit为1024byte再次测试<br />
<br />
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk1 --blocksize=1024 --count=20<br />
align 1073741824 pre 1.22ms on 1.53ms post 875µs diff 485µs<br />
align 536870912 pre 1.21ms on 1.57ms post 947µs diff 489µs<br />
align 268435456 pre 1.25ms on 1.72ms post 1.13ms diff 532µs<br />
align 134217728 pre 1.18ms on 1.64ms post 1.1ms diff 495µs<br />
align 67108864 pre 1.19ms on 1.65ms post 1.09ms diff 514µs<br />
align 33554432 pre 1.25ms on 1.74ms post 1.14ms diff 545µs<br />
align 16777216 pre 1.24ms on 1.7ms post 1.15ms diff 504µs<br />
align 8388608 pre 1.28ms on 1.77ms post 1.16ms diff 546µs<br />
align 4194304 pre 1.24ms on 1.72ms post 1.16ms diff 520µs<br />
align 2097152 pre 1.23ms on 1.7ms post 1.16ms diff 506µs<br />
align 1048576 pre 1.14ms on 1.28ms post 1.16ms diff 127µs<br />
align 524288 pre 1.13ms on 1.26ms post 1.15ms diff 122µs<br />
align 262144 pre 1.14ms on 1.26ms post 1.15ms diff 117µs<br />
align 131072 pre 1.14ms on 1.26ms post 1.15ms diff 116µs<br />
align 65536 pre 1.13ms on 1.26ms post 1.15ms diff 117µs<br />
align 32768 pre 1.14ms on 1.26ms post 1.15ms diff 116µs<br />
align 16384 pre 1.14ms on 1.26ms post 1.14ms diff 116µs<br />
align 8192 pre 1.14ms on 1.26ms post 1.15ms diff 117µs<br />
align 4096 pre 1.14ms on 1.26ms post 1.14ms diff 120µs<br />
align 2048 pre 1.14ms on 1.2ms post 1.14ms diff 53.7µs</div>
<div>
可以看出,从2024到4096速度差有突变,这是由于读取单位最小是4K引起的,所以该emmc的page size是4K。<br />
<br />
这里测试的blocksize参数是猜测的page大小,如果和实际的page大小是吻合的话,那么在小于erase block size的范围内读取时间差应该是比较小且一致性好,因为都是在一个erase block size内读两个N*page的数据。</div>
<div>
<br /></div>
<div>
再来测试sd卡</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --count=20</div>
<div>
align 8589934592 pre 1.6ms on 1.66ms post 1.6ms diff 55.4µs</div>
<div>
align 4294967296 pre 1.6ms on 1.67ms post 1.6ms diff 72.5µs</div>
<div>
align 2147483648 pre 1.61ms on 1.67ms post 1.6ms diff 68.7µs</div>
<div>
align 1073741824 pre 1.6ms on 1.67ms post 1.6ms diff 73.3µs</div>
<div>
align 536870912 pre 1.6ms on 1.67ms post 1.6ms diff 76.3µs</div>
<div>
align 268435456 pre 1.6ms on 1.67ms post 1.6ms diff 73.5µs</div>
<div>
align 134217728 pre 1.6ms on 1.67ms post 1.6ms diff 75.5µs</div>
<div>
align 67108864 pre 1.6ms on 1.67ms post 1.6ms diff 69.1µs</div>
<div>
align 33554432 pre 1.6ms on 1.67ms post 1.6ms diff 67.9µs</div>
<div>
align 16777216 pre 1.58ms on 1.67ms post 1.57ms diff 93.2µs</div>
<div>
align 8388608 pre 1.6ms on 1.65ms post 1.6ms diff 50µs</div>
<div>
<span style="color: red;">align 4194304 pre 1.62ms on 1.75ms post 1.67ms diff 103µs</span></div>
<div>
<span style="color: red;">align 2097152 pre 1.63ms on 1.63ms post 1.62ms diff 5.51µs</span></div>
<div>
align 1048576 pre 1.63ms on 1.63ms post 1.63ms diff -2488ns</div>
<div>
<span style="background-color: white; color: orange;">align 524288 pre 1.63ms on 1.69ms post 1.62ms diff 58.4µs</span></div>
<div>
<span style="background-color: white; color: orange;">align 262144 pre 1.63ms on 1.63ms post 1.63ms diff -151ns</span></div>
<div>
align 131072 pre 1.63ms on 1.63ms post 1.63ms diff -1616ns</div>
<div>
align 65536 pre 1.62ms on 1.63ms post 1.63ms diff -1548ns</div>
<div>
align 32768 pre 1.62ms on 1.63ms post 1.63ms diff 6.12µs</div>
</div>
<div>
<br /></div>
<div>
count=20是指读20次以减少误差。这里没有指定读的blocksize,程序自动选择了16384字节(16K)为读取单位。看起来好像是4194304(4MB)是erase block size,但是注意262144到524288同样也出现了突变,这个无法解释。<br />
<br />
同样用1024byte来测试<br />
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=1024 --count=20<br />
align 8589934592 pre 602µs on 649µs post 593µs diff 50.8µs<br />
align 4294967296 pre 613µs on 670µs post 596µs diff 66.1µs<br />
align 2147483648 pre 843µs on 917µs post 845µs diff 73.2µs<br />
align 1073741824 pre 848µs on 921µs post 845µs diff 74.5µs<br />
align 536870912 pre 844µs on 917µs post 846µs diff 71.9µs<br />
align 268435456 pre 842µs on 916µs post 845µs diff 72.3µs<br />
align 134217728 pre 846µs on 918µs post 847µs diff 71.6µs<br />
align 67108864 pre 847µs on 915µs post 843µs diff 69.8µs<br />
align 33554432 pre 842µs on 921µs post 847µs diff 76.2µs<br />
align 16777216 pre 830µs on 924µs post 821µs diff 98.5µs<br />
align 8388608 pre 838µs on 896µs post 843µs diff 55.3µs<br />
align 4194304 pre 878µs on 961µs post 823µs diff 110µs<br />
align 2097152 pre 880µs on 921µs post 871µs diff 45.4µs<br />
align 1048576 pre 878µs on 915µs post 877µs diff 37.9µs<br />
align 524288 pre 883µs on 972µs post 867µs diff 97.5µs<br />
align 262144 pre 874µs on 915µs post 878µs diff 38.8µs<br />
align 131072 pre 876µs on 921µs post 871µs diff 46.9µs<br />
align 65536 pre 873µs on 909µs post 874µs diff 35.5µs<br />
align 32768 pre 880µs on 914µs post 870µs diff 38.6µs<br />
align 16384 pre 874µs on 910µs post 871µs diff 37.2µs<br />
align 8192 pre 870µs on 906µs post 870µs diff 35.9µs<br />
align 4096 pre 827µs on 905µs post 869µs diff 56.7µs<br />
align 2048 pre 828µs on 830µs post 827µs diff 2.05µs<br />
看起来似乎4K是page的大小,而erase block size是4MB,但是524288处的时间差偏大,如果假设erase block size的大小是512K的话,很难解释为什么1M的读数差又变小,看起来更像是猜测的blocksize和实际page不是align引起的。<br />
<br />
再用4096byte测试<br />
beaglebone@beaglebone:~/flashbench$<br />
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=4096 --count=20<br />
align 8589934592 pre 734µs on 782µs post 727µs diff 51.6µs<br />
align 4294967296 pre 803µs on 874µs post 799µs diff 73.1µs<br />
align 2147483648 pre 986µs on 1.05ms post 988µs diff 67µs<br />
align 1073741824 pre 985µs on 1.06ms post 984µs diff 75.8µs<br />
align 536870912 pre 989µs on 1.06ms post 987µs diff 66.9µs<br />
align 268435456 pre 989µs on 1.06ms post 983µs diff 70µs<br />
align 134217728 pre 987µs on 1.06ms post 986µs diff 73.6µs<br />
align 67108864 pre 990µs on 1.06ms post 987µs diff 71.7µs<br />
align 33554432 pre 985µs on 1.06ms post 983µs diff 73.8µs<br />
align 16777216 pre 967µs on 1.06ms post 963µs diff 95.2µs<br />
align 8388608 pre 987µs on 1.04ms post 979µs diff 56.5µs<br />
align 4194304 pre 1.01ms on 1.11ms post 963µs diff 119µs<br />
align 2097152 pre 1.02ms on 1.06ms post 1.01ms diff 43.9µs<br />
align 1048576 pre 1.01ms on 1.06ms post 1.02ms diff 42.7µs<br />
align 524288 pre 1.02ms on 1.11ms post 1.01ms diff 95.5µs<br />
align 262144 pre 1.01ms on 1.05ms post 1.01ms diff 36.6µs<br />
align 131072 pre 1.02ms on 1.05ms post 1.01ms diff 37.9µs<br />
align 65536 pre 1.01ms on 1.05ms post 1.02ms diff 35.8µs<br />
align 32768 pre 1.02ms on 1.05ms post 1.01ms diff 39.4µs<br />
align 16384 pre 1.01ms on 1.05ms post 1.02ms diff 37.4µs<br />
align 8192 pre 1.01ms on 1.05ms post 1.01ms diff 33.1µs</div>
</div>
<div>
同样512K处很难解释</div>
<div>
<br /></div>
<div>
8K也是类似的分布</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=8192 --count=20</div>
<div>
align 8589934592 pre 921µs on 967µs post 913µs diff 49.5µs</div>
<div>
align 4294967296 pre 1.2ms on 1.27ms post 1.19ms diff 69.8µs</div>
<div>
align 2147483648 pre 1.2ms on 1.27ms post 1.19ms diff 72.1µs</div>
<div>
align 1073741824 pre 1.2ms on 1.27ms post 1.2ms diff 70µs</div>
<div>
align 536870912 pre 1.19ms on 1.27ms post 1.19ms diff 76.1µs</div>
<div>
align 268435456 pre 1.2ms on 1.26ms post 1.2ms diff 67.7µs</div>
<div>
align 134217728 pre 1.2ms on 1.27ms post 1.19ms diff 72.9µs</div>
<div>
align 67108864 pre 1.19ms on 1.26ms post 1.19ms diff 69.4µs</div>
<div>
align 33554432 pre 1.19ms on 1.26ms post 1.19ms diff 71.1µs</div>
<div>
align 16777216 pre 1.18ms on 1.26ms post 1.17ms diff 88.9µs</div>
<div>
align 8388608 pre 1.19ms on 1.25ms post 1.19ms diff 58.4µs</div>
<div>
align 4194304 pre 1.22ms on 1.3ms post 1.2ms diff 93.3µs</div>
<div>
align 2097152 pre 1.23ms on 1.23ms post 1.22ms diff 1.74µs</div>
<div>
align 1048576 pre 1.22ms on 1.22ms post 1.22ms diff -4151ns</div>
<div>
align 524288 pre 1.23ms on 1.28ms post 1.22ms diff 57.3µs</div>
<div>
align 262144 pre 1.22ms on 1.22ms post 1.22ms diff -1387ns</div>
<div>
align 131072 pre 1.22ms on 1.22ms post 1.22ms diff 1.01µs</div>
<div>
align 65536 pre 1.22ms on 1.21ms post 1.22ms diff -7133ns</div>
<div>
align 32768 pre 1.22ms on 1.23ms post 1.22ms diff 5.34µs</div>
<div>
align 16384 pre 1.22ms on 1.22ms post 1.22ms diff 211ns</div>
</div>
<div>
<br />
32K<br />
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=32768<br />
[sudo] password for beaglebone:<br />
align 8589934592 pre 2.03ms on 2.08ms post 2.02ms diff 56µs<br />
align 4294967296 pre 2.42ms on 2.49ms post 2.42ms diff 73.5µs<br />
align 2147483648 pre 2.4ms on 2.49ms post 2.43ms diff 76.2µs<br />
align 1073741824 pre 2.42ms on 2.49ms post 2.42ms diff 68.7µs<br />
align 536870912 pre 2.42ms on 2.49ms post 2.42ms diff 72.8µs<br />
align 268435456 pre 2.42ms on 2.49ms post 2.42ms diff 72.7µs<br />
align 134217728 pre 2.41ms on 2.49ms post 2.42ms diff 74.6µs<br />
align 67108864 pre 2.45ms on 2.52ms post 2.42ms diff 89.3µs<br />
align 33554432 pre 2.4ms on 2.49ms post 2.43ms diff 75.4µs<br />
align 16777216 pre 2.44ms on 2.57ms post 2.44ms diff 128µs<br />
align 8388608 pre 2.42ms on 2.47ms post 2.42ms diff 56.9µs<br />
align 4194304 pre 2.45ms on 2.54ms post 2.43ms diff 94.3µs<br />
align 2097152 pre 2.45ms on 2.45ms post 2.45ms diff 1.25µs<br />
align 1048576 pre 2.44ms on 2.44ms post 2.45ms diff -3208ns<br />
align 524288 pre 2.45ms on 2.5ms post 2.44ms diff 58.9µs<br />
align 262144 pre 2.45ms on 2.44ms post 2.45ms diff -6505ns<br />
align 131072 pre 2.44ms on 2.45ms post 2.44ms diff 3.37µs<br />
align 65536 pre 2.44ms on 2.44ms post 2.45ms diff -3327ns<br />
<br />
至此猜测如果以8K*N作为page大小,无法和测试align。<br />
<br /></div>
<div>
该sd卡的大小是62333952*512byte,用</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ factor 62333952</div>
<div>
62333952: 2 2 2 2 2 2 2 2 2 2 3 103 197</div>
</div>
<div>
<br /></div>
<div>
公因数中有3,考虑到该sd卡有可能是TLC闪存,一位可以存储3bit,所以有可能page size是4K为基础的3的倍数。<br />
<br />
103*197并不是2的指数,这不是问题,因为over provisioning已经被很多厂商采用,controller会保留一部分的flash单元专门用于gc等操作,这些单元对用户是不可见的。<br />
<br />
对于flash来说,存储单元page仍是以4K*N(N是2的指数)为单位的,但是一个TLC存储单元表示3bit,所以换算成logic page size就是12K*N了。</div>
<div>
<br /></div>
<div>
try 12K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=12288 --count=20</div>
<div>
align 6442450944 pre 1.4ms on 1.48ms post 1.4ms diff 75.7µs</div>
<div>
align 3221225472 pre 1.4ms on 1.49ms post 1.4ms diff 85.1µs</div>
<div>
align 1610612736 pre 1.4ms on 1.49ms post 1.4ms diff 92.8µs</div>
<div>
align 805306368 pre 1.4ms on 1.49ms post 1.4ms diff 93.7µs</div>
<div>
align 402653184 pre 1.4ms on 1.49ms post 1.4ms diff 93.8µs</div>
<div>
align 201326592 pre 1.39ms on 1.49ms post 1.4ms diff 94.4µs</div>
<div>
align 100663296 pre 1.4ms on 1.49ms post 1.4ms diff 96.1µs</div>
<div>
align 50331648 pre 1.4ms on 1.49ms post 1.4ms diff 96.6µs</div>
<div>
align 25165824 pre 1.4ms on 1.49ms post 1.4ms diff 89.7µs</div>
<div>
align 12582912 pre 1.4ms on 1.66ms post 1.55ms diff 184µs</div>
<div>
align 6291456 pre 1.4ms on 1.4ms post 1.4ms diff 1.35µs</div>
<div>
align 3145728 pre 1.43ms on 1.47ms post 1.43ms diff 40.7µs</div>
<div>
align 1572864 pre 1.43ms on 1.47ms post 1.42ms diff 41.6µs</div>
<div>
align 786432 pre 1.43ms on 1.47ms post 1.42ms diff 46.5µs</div>
<div>
align 393216 pre 1.43ms on 1.47ms post 1.43ms diff 41.6µs</div>
<div>
align 196608 pre 1.43ms on 1.47ms post 1.42ms diff 43.3µs</div>
<div>
align 98304 pre 1.43ms on 1.47ms post 1.42ms diff 48µs</div>
<div>
align 49152 pre 1.42ms on 1.47ms post 1.42ms diff 42.8µs</div>
<div>
align 24576 pre 1.42ms on 1.47ms post 1.43ms diff 41.2µs</div>
</div>
<div>
看起来不错,但是6291456出有突变</div>
<div>
<br /></div>
<div>
24K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=24576 --count=20</div>
<div>
align 6442450944 pre 1.65ms on 1.72ms post 1.65ms diff 69.9µs</div>
<div>
align 3221225472 pre 2ms on 2.09ms post 2ms diff 88.3µs</div>
<div>
align 1610612736 pre 2.01ms on 2.09ms post 2ms diff 87.3µs</div>
<div>
align 805306368 pre 2ms on 2.09ms post 2ms diff 88µs</div>
<div>
align 402653184 pre 2ms on 2.09ms post 2ms diff 87.6µs</div>
<div>
align 201326592 pre 2ms on 2.09ms post 2ms diff 87.4µs</div>
<div>
align 100663296 pre 2.01ms on 2.09ms post 2ms diff 88.1µs</div>
<div>
align 50331648 pre 2.01ms on 2.09ms post 2ms diff 86µs</div>
<div>
align 25165824 pre 2ms on 2.09ms post 2ms diff 89.2µs</div>
<div>
align 12582912 pre 2ms on 2.28ms post 2.18ms diff 187µs</div>
<div>
align 6291456 pre 2ms on 2ms post 2.01ms diff -660ns</div>
<div>
align 3145728 pre 2.03ms on 2.03ms post 2.02ms diff -312ns</div>
<div>
align 1572864 pre 2.03ms on 2.03ms post 2.02ms diff 1.23µs</div>
<div>
align 786432 pre 2.03ms on 2.04ms post 2.03ms diff 3.9µs</div>
<div>
align 393216 pre 2.03ms on 2.03ms post 2.03ms diff 1.68µs</div>
<div>
align 196608 pre 2.03ms on 2.03ms post 2.02ms diff 825ns</div>
<div>
align 98304 pre 2.03ms on 2.03ms post 2.03ms diff -1041ns</div>
<div>
align 49152 pre 2.03ms on 2.03ms post 2.03ms diff -672ns<br />
比较通顺了,看起来24K可以align,且erase block size的大小是12582912,也就是12M。如果24K可以和page align,那么24K*N应该都可以align。</div>
</div>
<div>
<br /></div>
<div>
48K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=49152 --count=20</div>
<div>
align 6442450944 pre 2.75ms on 2.83ms post 2.75ms diff 72.3µs</div>
<div>
align 3221225472 pre 3.21ms on 3.3ms post 3.21ms diff 89.1µs</div>
<div>
align 1610612736 pre 3.21ms on 3.3ms post 3.21ms diff 87µs</div>
<div>
align 805306368 pre 3.22ms on 3.3ms post 3.21ms diff 87µs</div>
<div>
align 402653184 pre 3.22ms on 3.3ms post 3.21ms diff 86.9µs</div>
<div>
align 201326592 pre 3.22ms on 3.3ms post 3.22ms diff 86.3µs</div>
<div>
align 100663296 pre 3.21ms on 3.3ms post 3.21ms diff 90.9µs</div>
<div>
align 50331648 pre 3.21ms on 3.3ms post 3.21ms diff 89.3µs</div>
<div>
align 25165824 pre 3.21ms on 3.3ms post 3.21ms diff 86.9µs</div>
<div>
align 12582912 pre 3.21ms on 3.52ms post 3.39ms diff 214µs</div>
<div>
align 6291456 pre 3.21ms on 3.21ms post 3.21ms diff 3.22µs</div>
<div>
align 3145728 pre 3.24ms on 3.24ms post 3.24ms diff 4.21µs</div>
<div>
align 1572864 pre 3.24ms on 3.24ms post 3.24ms diff 4.54µs</div>
<div>
align 786432 pre 3.24ms on 3.24ms post 3.24ms diff 2.77µs</div>
<div>
align 393216 pre 3.24ms on 3.24ms post 3.24ms diff 2.68µs</div>
<div>
align 196608 pre 3.23ms on 3.24ms post 3.24ms diff 5.64µs</div>
<div>
align 98304 pre 3.24ms on 3.24ms post 3.24ms diff 7.47µs</div>
</div>
<div>
<br /></div>
<div>
96K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=98304 --count=20</div>
<div>
align 6442450944 pre 5.16ms on 5.22ms post 5.15ms diff 67.2µs</div>
<div>
align 3221225472 pre 5.8ms on 5.89ms post 5.8ms diff 87.6µs</div>
<div>
align 1610612736 pre 5.81ms on 5.89ms post 5.8ms diff 87.9µs</div>
<div>
align 805306368 pre 5.81ms on 5.89ms post 5.8ms diff 82µs</div>
<div>
align 402653184 pre 5.8ms on 5.89ms post 5.8ms diff 91.2µs</div>
<div>
align 201326592 pre 5.81ms on 5.89ms post 5.8ms diff 85.9µs</div>
<div>
align 100663296 pre 5.81ms on 5.89ms post 5.8ms diff 88.1µs</div>
<div>
align 50331648 pre 5.81ms on 5.89ms post 5.8ms diff 82.6µs</div>
<div>
align 25165824 pre 5.81ms on 5.89ms post 5.8ms diff 82.2µs</div>
<div>
align 12582912 pre 5.81ms on 6.12ms post 6.01ms diff 213µs</div>
<div>
align 6291456 pre 5.81ms on 5.81ms post 5.81ms diff -3359ns</div>
<div>
align 3145728 pre 5.86ms on 5.86ms post 5.85ms diff 3.84µs</div>
<div>
align 1572864 pre 5.86ms on 5.86ms post 5.85ms diff 1.57µs</div>
<div>
align 786432 pre 5.86ms on 5.85ms post 5.85ms diff -5169ns</div>
<div>
align 393216 pre 5.86ms on 5.86ms post 5.86ms diff -2854ns</div>
<div>
align 196608 pre 5.85ms on 5.86ms post 5.86ms diff 661ns</div>
</div>
<div>
<br /></div>
<div>
128K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=196608 --count=20</div>
<div>
[sudo] password for beaglebone:</div>
<div>
align 6442450944 pre 9.72ms on 9.79ms post 9.73ms diff 62.9µs</div>
<div>
align 3221225472 pre 10.7ms on 10.8ms post 10.7ms diff 87.5µs</div>
<div>
align 1610612736 pre 10.7ms on 10.8ms post 10.7ms diff 77.6µs</div>
<div>
align 805306368 pre 10.8ms on 10.8ms post 10.7ms diff 76.1µs</div>
<div>
align 402653184 pre 10.7ms on 10.8ms post 10.7ms diff 116µs</div>
<div>
align 201326592 pre 10.7ms on 10.8ms post 10.7ms diff 87µs</div>
<div>
align 100663296 pre 10.7ms on 10.8ms post 10.7ms diff 89.9µs</div>
<div>
align 50331648 pre 10.7ms on 10.8ms post 10.7ms diff 93.7µs</div>
<div>
align 25165824 pre 10.7ms on 10.8ms post 10.7ms diff 94.8µs</div>
<div>
align 12582912 pre 10.7ms on 11.1ms post 10.9ms diff 247µs</div>
<div>
align 6291456 pre 10.7ms on 10.7ms post 10.7ms diff -17098n</div>
<div>
align 3145728 pre 10.8ms on 10.8ms post 10.8ms diff 19.5µs</div>
<div>
align 1572864 pre 10.9ms on 10.8ms post 10.8ms diff -57897n</div>
<div>
align 786432 pre 10.8ms on 10.8ms post 10.8ms diff -6543ns</div>
<div>
align 393216 pre 10.8ms on 10.8ms post 10.8ms diff -31925n</div>
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
看起来在使用4K*3*N作为page是较为规律,且突变都发生在1258912(12MB)出。</div>
<div>
<br /></div>
<div>
对于TLC颗粒来说,就是以8K为page,4M为一个erase block size。<br />
<br />
在25165824处读取时间的降低也可以解释。当我们写入是使用的logic block address(LBA),但在sd卡内部,不是所有的颗粒都是线性地址,前面提到sd卡内部可能有多个plane,不同plane上的block其实是可以同时访问的,sd卡的controller通过FTL来将LBA翻译成内部实际的physic block address(PBA)。当我们读取两个不同block上的page时,FTL可以将这两个block映射成sd卡上不同plane的block,读取两个不同plane上的block的时间和读取一个plane上一个block的时间应该相近,所以可以看到25165824之后的读取速度反而提高了。<br />
<br /></div>
<div>
再来测试一下速度</div>
<div>
12K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench /dev/mmcblk0 --open-au --erasesize=$[12*1024*1024] --blocksize=$[12*1024] --open-au-nr=1</div>
<div>
12MiB 13.2M/s</div>
<div>
6MiB 13.2M/s</div>
<div>
3MiB 12.3M/s</div>
<div>
1.5MiB 13M/s</div>
<div>
768KiB 12.9M/s</div>
<div>
384KiB 13.1M/s</div>
<div>
192KiB 13M/s</div>
<div>
96KiB 11.6M/s</div>
<div>
48KiB 11.3M/s</div>
<div>
24KiB 6.53M/s</div>
<div>
12KiB 3.47M/s</div>
</div>
<div>
<br /></div>
<div>
24K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench /dev/mmcblk0 --open-au --erasesize=$[12*1024*1024] --blocksize=$[24*1024] --open-au-nr=1</div>
<div>
12MiB 12.2M/s</div>
<div>
6MiB 13M/s</div>
<div>
3MiB 12.7M/s</div>
<div>
1.5MiB 12.9M/s</div>
<div>
768KiB 13.2M/s</div>
<div>
384KiB 13.6M/s</div>
<div>
192KiB 13.4M/s</div>
<div>
96KiB 12M/s</div>
<div>
48KiB 11.7M/s</div>
<div>
24KiB 6.23M/s</div>
</div>
<div>
<br /></div>
<div>
48K</div>
<div>
<div>
beaglebone@beaglebone:~/flashbench$ sudo ./flashbench /dev/mmcblk0 --open-au --erasesize=$[12*1024*1024] --blocksize=$[48*1024] --open-au-nr=1</div>
<div>
12MiB 12.8M/s</div>
<div>
6MiB 12.7M/s</div>
<div>
3MiB 12.9M/s</div>
<div>
1.5MiB 13.1M/s</div>
<div>
768KiB 13.3M/s</div>
<div>
384KiB 13.1M/s</div>
<div>
192KiB 13.4M/s</div>
<div>
96KiB 12.2M/s</div>
<div>
48KiB 11.8M/s</div>
</div>
<div>
<br /></div>
<div>
看起来参数差不多,但经过多次测试,48K的写入输出最为稳定。</div>
<div>
稳妥起见,用24K作为page size,12M为erase block size。<br />
<br />
在分区的时候,起始地址使用12MB来对齐12M的erase block size。<br />
sudo -c /fdisk/mmcblk0<br />
n创建新分区<br />
起始地址选24576,因为单位是512byte,换算就是12M。<br />
<br />
或者用parted也可以,fdisk比较老旧了,实际man手册中也不推荐使用了。<br />
<br />
然后需要用ext4格式化,ext4是支持日志和RAID的文件系统,可以</div>
<div>
用<br />
<pre style="color: #777777; line-height: 16.796875px; text-align: justify;"><strong><span class="skimlinks-unlinked">>>sudo mkfs.ext4</span> -O ^has_journal -E stride=6,stripe-width=3072 -b 4096 -L Fedora14Arm /dev/mmcblk0p1</strong></pre>
<pre style="color: #777777; line-height: 16.796875px; text-align: justify;"></pre>
-O ^has_journal 表示关闭日志记录功能,这个可以减轻写入,但是系统崩溃后文件恢复就很困难,这个可以自己选择是否需要。<br />-b 4096代表以4K来作为文件系统的簇,最小读写单位。<br />-L 是创建label<br />stride可以理解为读的最小单位,而strip-width可以理解为写的最小单位,这是以RAID磁盘阵列为基础的,但是flash的内部读写和RAID有一定的相似之处,所以这里也可以复用。读希望是page的大小,也就是24K,而写希望是12M,一个erase block size的大小,避免read-modif<br />y-write的操作,以4K为单位计算,stride=page size/cluster size=24K/4K=6,strip-width=12*1024K/4K=3072.</div>
<div>
<br /></div>
<div>
mount该ext4分区的参数也需要调整,假设格式化时已经关闭了日志功能。<br />
>> sudo mount -o data=writeback,noatime,nodiratime /dev/mmcblk0p1 /media/sd<br />
data=writeback表示不写入日志了。<br />
noatime 不更新node的时间<br />
nodiratime 不更新文件夹的修改时间<br />
<br />
<br /></div>
<div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-77780612014488462132015-02-26T11:36:00.000-05:002015-02-26T15:49:59.222-05:00beaglebone black简单入门(二)从(一)中的简单配置,beaglebone black已经可以开始工作了。以下的设置假设操作系统是debian其安装在emmc中,有sd卡作为普通存储介质,emmc只作为系统盘。有可用的网络。<br />
<br />
简单的术语:<br />
<br />
在系统中emmc将被识别为/dev/mmcblk1,sd卡将被识别为/dev/mmcblk0,如果有移动硬盘接入,可能会识别为/dev/sdaX。<br />
<br />
sd卡的格式化和挂载是一个很值得深入研究的问题,将在(3)中详细介绍。<br />
<br />
假设你已经使用root用户通过ssh登陆了系统。<br />
<br />
进行系统设置的第一步是创建用户和修改密码,系统默认的用户是root:root和debian:temppwd,这些都是公开的,所以为了安全起见,首先需要修改root和debian的用户密<br />
<br />
码,同时为了更加安全,我希望创建一个全新的用户,拥有和debian一样的权限。<br />
<br />
1.输入passwd修改root用户密码,在使用passwd debian修改debian用户密码。<br />
<br />
2.创建新用户,比如beaglebone。<br />
>>useradd beaglebone<br />
该命令将创建beaglebone,处于同名的beaglebone group中。<br />
用groups debian查看debian的用户组权限。<br />
beaglebone@beaglebone:~$ groups debian<br />
debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users netdev i2c admin spi systemd-journal weston-launch xenomai<br />
<br />
将beaglebone添加进还没有加入的group中,比如<br />
>>useradd -G adm,kmem,dialout,cdrom,floppy,audio,dip,video,plugdev,users, netdev, i2c,admin,spi ,systemd-journal,weston-launch,xenomai beaglebone<br />
<br />
3.设置beaglebone用于sudo权限<br />
<br />
首先用update-alternatives --config editor来修改系统默认的编辑器,我习惯用vim。<br />
<br />
1)切换到root,运行:<br />
su - (注意:su的后面有“-”符号,su - 和 su是不一样的)<br />
<br />
2) sudo visudo<br />
在root ALL=(ALL) ALL行的下面添加如下:<br />
your-user-name ALL=(ALL) ALL<br />
如果想在sudo的时候不需输入密码,则在root ALL=(ALL) ALL行的下面添加如下:<br />
your-user-name ALL=(ALL) NOPASSWD: ALL<br />
<br />
用户配置完毕。<br />
<br />
重启beaglebone,用beaglebone远程登录beaglebone black。<br />
<br />
beaglebone black没有ntc模块,所以系统时间无法保存,系统时间不对的话,会引起各种各样的问题,比如更新时间不对,编译出错。<br />
<br />
查看时间的命令是<br />
>>date<br />
<br />
可以用<br />
>>date -s mm/dd/yyyy来手工设定时间<br />
<br />
用ntp来同步网络时间。<br />
>>sudo apt-get update<br />
>>sudo apt-get install ntp ntpdate<br />
<br />
安装后ntp service也许有各种问题无法自动更新时间,所以可以用<br />
>>ntpdate -u -s -b pool.ntp.org来手动更新时间<br />
<br />
首先检查是否有xorg桌面比如lxde,因为我默认是要使用beaglebone作为服务器使用,所以不希望GUI占用太多存储空间和内存,所以要先进行系统精简。<br />
<br />
参考下面的链接:<br />
https://hifiduino.wordpress.com/2014/03/17/beaglebone-black-base-operating-system/<br />
<br />
简单的总结就是:<br />
>>dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n<br />
#查看安装程序占用空间<br />
<br />
开始清理系统:<br />
<br />
Remove X11 package (GUI)<br />
>>apt-get remove -y x11-common<br />
>>apt-get autoremove<br />
<br />
Remove Desktop environment GNOME and GTK<br />
>>apt-get remove libgtk-3-common --purge<br />
>>apt-get autoremove<br />
>>apt-get remove libgtk2.0-common --purge<br />
>>apt-get autoremove<br />
>>rm -r /usr/share/icons<br />
>>apt-get remove gnome-* --purge<br />
>>apt-get autoremove<br />
>>apt-get remove desktop-base --purge<br />
>>apt-get autoremove<br />
<br />
>>df -h <br />
查看系统空间占用<br />
<br />
重启<br />
<br />
内网转发<br />
<br />
在router上设置内网转发<br />
<br />
首先将router的访问端口由80改为8080,因为80端口是最不太可能被封锁的网络端口,所以当访问beaglebone black时,我希望用80端口访问。<br />
<br />
假设beagleone black的局域网ip是192.168.1.7,在虚拟服务器,创建转发规则如下:<br />
服务端口号:80<br />
内部端口号:22<br />
ip地址:192.168.1.7<br />
协议:all<br />
<br />
具体设置可以google路由器型号+远程web管理,转发规则等。<br />
<br />
这样假设router的外网ip是212.168.1.1,在外部网络用ssh软件登陆212.168.1.1,端口80就可以访问beaglebone black了。ssh软件推荐mobaXterm,功能强大,且登陆后自动打开stfp功能,可以直接上传和下载文件。<br />
<br />
中文化处理<br />
<br />
自行google debian 中文化<br />
在产生utf8_zh-CN的locale后,还需要在terminal进行设置。<br />
>>vim ~/.profile<br />
在最后加入<br />
export LANG=zh_CN.UTF-8<br />
export LC_ALL=zh_CN.UTF-8<br />
<br />
重启后,console就可以正常的显示和处理中文了,如果还有乱码,则需要将ssh软件的交互编码修改为utf8。<br />
<br />
关于sd卡的挂载,网上有一堆方法,比如用udev规则或是udisks等等,设置相当繁琐,且经常不起作用,我的方案就是写个脚本用mount命令挂载即可。<br />
<br />
手工mount最头疼的就是访问权限的问题,不同的format需要有不同的挂载参数。假设我需要挂载sd卡和一个外置硬盘。其访问node分别是/dev/mmcblk0p1和/dev/sda1,sd卡是ext4格式,外置硬盘是ntfs格式。<br />
<br />
在/media下创建挂载点:<br />
>>sudo mkdir /media/sd<br />
>>sudo mkdir /media/usbhdd<br />
<br />
再用chown来改变文件夹的用户属性<br />
>>sudo chown beaglebone:beaglebone /media/sd<br />
>>sudo chown beaglebone:beaglebone /media/usbhdd<br />
<br />
用chmod改变访问权限为755<br />
>>chmod -R 755 /media/sd<br />
>>chmod -R 755 /media/usbhdd<br />
<br />
准备工作都做好之后就可以mount了<br />
sudo mount /dev/mmcblk0p1 /media/sd<br />
sudo mount -t ntfs -o uid=beaglebone,gid=beaglebone /dev/sda1 /media/usbhdd<br />
<br />
其中uid和gid是vfat和ntfs分区的权限管理参数,设置为当前用户后,其实对所有用户都是可读写的,所以如果用beaglebone black当多用户服务器的话,一定要小心。<br />
<br />
另一个奇怪的现象是mount后的sd文件夹所属用户被改为了root用户组,当前用户无法读写。<br />
<br />
这里需要重新用chown将sd改为beaglebone所有,这个动作将分区上的权限设置重新覆盖。<br />
>>sudo chown beaglebone:beaglebone /media/sd<br />
>>sudo umount /media/sd<br />
<br />
再次mount<br />
>>sudo mount /dev/mmcblk0p1 /media/sd<br />
<br />
再用ls -l /media/sd查看,发现用户组已经是beaglebone了,以后就可以正常的mount,不用担心无权限访问了。<br />
<br />
在~下创建脚本bbb-init<br />
#!/bin/bash<br />
mount /dev/mmcblk0p1 /media/sd<br />
mount -t ntfs -o uid=beaglebone,gid=beaglebone /dev/sda1 /media/usbhdd<br />
<br />
每次开机后用sudo执行以下就可以了。<br />
<br />
关机脚本pd-bbb<br />
#!/bin/bash<br />
umount /media/sd<br />
umount /media/usbhdd<br />
reboot<br />
<br />
关机时用这个指令<br />
<br />
网络爬虫和编程<br />
<br />
安装python3和相关的module库。<br />
<br />
可以用sudo apt-cache search python3*来选择<br />
<br />
安装sqlite3<br />
<br />
安装phantomjs(需要编译安装)和selenium。<br />
<br />
如果希望用firefox抓取,也可以安装xvfb和iceweasel。<br />
<br />
网络浏览用w3m和links2,其他不推荐,因为是用ssh隧道,不支持frame buffer,所以是无法浏览图片的。<br />
<br />
安装samba<br />
<br />
安装vsftpd,unzip,tmux,ntfs-3g,mc,ipython3<br />
<br />
tmux是很重要的工具,它最重要的一点就是可以运行命令与当前ssh进程隔离,这样如果ssh进程因为网络问题断开后,运行的程序不会因此而终止。请自行google tmux的使用。Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-39170495709779308372014-08-02T10:15:00.001-04:002015-02-25T21:19:13.785-05:00beaglebone black简单入门(一)玩了一阵arduino,感觉偏硬件很多,做一些复杂的软硬结合的工作不够方便,加之板子都扔在了国内,所以最近考虑换一个平台玩玩。在raspbery和beaglebone black(BBB)选择了BBB,因为觉得BBB配置会更高一些,接口也更丰富一点,当然BBB的教程资源和生态环境是不如raspberry的,但是仗着自己会一点点linux,和更喜欢用python开发,就硬着头皮入手了BBB。<br />
<br />
下面简单介绍一点我的BBB的配置心得。<br />
<br />
首先有一块BBB板子和usb cable足矣,什么屏幕,无线网卡都不需要,就可以开始尝试了,当然以后你可以完善这些外围配置,只是我觉得有网卡应该就ok了。<br />
<br />
http://elinux.org/Beagleboard:BeagleBoneBlack<br />
http://beagleboard.org/black<br />
从这两个页面出发,把所有的链接文章都读一遍会帮助很大。<br />
<br />
初始配置如下:<br />
software:putty,http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html<br />
以windows 7为例<br />
<br />
硬件:BBB,usb cable,带有网络连接的电脑。<br />
<br />
在http://beagleboard.org/getting-started#step2下载BBB的driver安装。<br />
如果插上BBB后出现相应的U盘,说明驱动工作正常。<br />
<br />
打开BBB后,按https://learn.adafruit.com/downloads/pdf/ssh-to-beaglebone-black-over-usb.pdf的说明就可以使用ssh控制BBB了。<br />
<br />
用户root,密码需要的话就是root。<br />
<br />
根据http://lanceme.blogspot.com/2013/06/windows-7-internet-sharing-for.html的说明配置来配置BBB共享windows联网。<br />
需要说明的是windows 7的ICS需要使用192.168.0.1来配置网关,如果你上网路由器已经使用了这个网址,就会弹出错误对话框,需要将路由器的地址设为别的地址,如果碰上这种情况请自行google。<br />
<br />
联网之后就可以更新系统和安装软件了,前提是对linux有一定了解。<br />
<br />
安装系统篇:<br />
如果对默认的系统不满意,可以自己安装系统,参照http://elinux.org/Beagleboard:Debian_On_BeagleBone_Black.<br />
<br />
如果有sd卡,可以使用sd卡来扩展系统空间,参照<br />
http://elinux.org/Beagleboard:MicroSD_As_Extra_Storage<br />
我的理解就是需要将系统分为两个区,第一个区是fat32格式,第二个区是linux分区就可以了,我都是手动在BBB上讲分区搞定的。需要用到fdisk和mkfs。<br />
update:只是一个分区也可以挂载了。<br />
<br />
网络设置<br />
购买了TP-LINK WNT725N wifi module,但用得是8188的芯片,默认debian系统没有驱动,所以需要自己编译安装。<br />
按照http://coremega.tumblr.com/post/78194792401/install-tp-link-wireless-n-adapter-tl-wn725n-on的步奏就可以。但是在第27步时需要在<span style="background-color: #f9f9f9; color: #111111; font-family: Georgia, serif; font-size: 15px; line-height: 22px;">auto wlan0后面加入一行allow-hotplug wlan0,不然开机后还需要用ifup wlan0来手工启动wifi module。</span><br />
<span style="background-color: #f9f9f9; color: #111111; font-family: Georgia, serif; font-size: 15px; line-height: 22px;"><br /></span>
<span style="color: #111111; font-family: Georgia, serif;"><span style="background-color: #f9f9f9; font-size: 15px; line-height: 22px;">再参考</span><span style="font-size: 15px; line-height: 22px;">http://svay.com/blog/setting-up-a-wifi-connection-on-the-raspberrypi/进行配置。</span></span><br />
<span style="color: #111111; font-family: Georgia, serif;"><span style="font-size: 15px; line-height: 22px;">在参照上面的设置后就可以无线上网了,但是驱动还是不太稳定,再进行大量下载时,系统有时就无端崩溃,因为我经常是远程操控,所以无法回来重启系统,最后还是选择用ethernet来连接网络。</span></span><br />
<span style="color: #111111; font-family: Georgia, serif;"><span style="font-size: 15px; line-height: 22px;"><br /></span></span>
使用ethernet不需要额外设置,直接连接就可以,经过多天的使用,网络连接非常稳定,不会造成系统崩溃。<br />
<br />
经过上面的系统设置,beaglebone就可以正常的上网更新和安装软件了,后续阅读是beaglebone black简单入门(二)--- 系统配置, (三)---如何优化sd卡性能。Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-59006508575109731652013-04-17T07:41:00.004-04:002015-02-26T15:06:05.917-05:00怎样在opensuse下搞定arduino安装的话,参照<a href="http://playground.arduino.cc/Linux/openSUSE">http://playground.arduino.cc/Linux/openSUSE</a>进行就可以了<br />
<br />
主要是执行后发现串口设置是灰化的,需要进行一些设置。<br />
<br />
第一步用将当前用户加入tty, dialout, lock and uucp组。<br />
<br />
第二步,输入ls /dev/tty*,将arduino板接上usb之后,再输入ls /dev/tty*,多出来的/dev/ttyACM*就是arduino板对应的串口了。<br />
<br />
第三步,编辑~/.arduino/preferences.txt,<br />
<br />
将这一行进行修改<br />
<br />
serial.port=/dev/ttyACM*<br />
<br />
*是对应的数字<br />
<br />
敲入arduino&,发现什么了<br />
<br />
<br />
<br />
参考文献<br />
<div>
<a href="http://playground.arduino.cc/Linux/openSUSE">http://playground.arduino.cc/Linux/openSUSE</a></div>
<div>
<a href="https://wiki.archlinux.org/index.php/Arduino">https://wiki.archlinux.org/index.php/Arduino</a></div>
Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-90567105646713344842012-09-13T12:34:00.003-04:002012-09-13T12:37:55.543-04:00投机方法论(序)<br />
这个系列文章的开场白就是“混乱的年代你需要投机”。<br />
<br />
<br />
投机,是指货币所有者以其所持有的货币购入非货币资产,然后在未来将购得的非货币资产再次转换为货币资产,以赚取较低的购入价格和较高的出售价格之间的利润,即差价。股票,期货,贵金属交易都是投机交易。<br />
<br />
但本质上来说投机就是赌博,它的核心就是对某种事物或活动的变化方向持相反意见的两类人的对赌活动,因为如果你看多买入,那也必须要有对手方看低卖出才能形成交易。也就是说你们的交易本身不能产生价值,一方的赢利都是建立在另一方的损失的基础上的。<br />
<br />
<br />
所以不需要对赌博这个词特别反感,因为你参与买基金,买股票,炒期货或是贵金属实际上都是赌博,与传统意义中的赌博并无区别。那是否可以置身事外,绝不参与呢?我的看法是no。因为经济的虚拟金融化越来越明显,货币贬值的速度只会越来越快,工资收入肯定是远远低于CPI。你手中的资产如果不能增值,那也就意味着随着时间的推移,你实际上是在越来越穷。所以为了晚年的生活保障(不要提社保这个最大的庞氏骗局),你基本上是不可避免的要参与到各种经济投机(赌博)运动中去。大概来说赌博和被收税一样也是人一生中无法避免的吧。<br />
<br />
<br />
俗话说的好,生活就是一场XX,如果无法避免,那就好好享受吧。 <br />
<br />
<br />
说到赌博,假设你和你的对手的输赢概率是完全随机且对等的,那么长期下来,你的赌博结果就是不赢不输。但是由于庄家的出现,使得赌局的数学概念发生了本质上的变化。数学上一个理想庄家的行为应该是不参与赌局,只是从赌资中抽取水钱,这样赌徒群体整体上来说必然是亏损的。如果参与赌局的输赢概率完全是随机的话,那么赌徒就不可能赢钱。<br />
<br />
<br />
既然如此,那何必还要赌博呢,不赌没钱景,赌也没钱景。人生还真是无奈啊。在你完全要放弃本文章的阅读之前,请把上一段再仔细的读上3遍。<br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
123456789............................................................我是读秒器 <br />
<br />
123456789............................................................我是催眠器 <br />
<br />
ok,希望你是真的认真又读了3遍,上段分析的前提是“参与赌局的输赢概率完全是随机”,我们无法选择是否要参赌,但可以选择参赌的战场。实际中的赌局由于各种人为因素的影响,对赌个体素质的参差不齐,庄家因为相对信息优势,很多时候也会参与对赌。输赢概率不可能是完全随机的,这就使得利用金融理论中的风险控制理论分析赌局具备很强的操作性。<br />
<br />
对于你来说,你能影响赌局的唯一手段就是提升自己的赌博素质,从而使自己在赌博中可以处于更为有利的位置。<br />
<br />
后面的文章将会就赌局类型分析,信息论、风险控制、赌徒的自我修养、现金管理等方面进行阐述,敬请期待。 <br />
<br />
<br />
<br />
<br />Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-45906763791707751752012-07-21T08:51:00.005-04:002012-07-21T08:51:49.107-04:00拖延症的相关网站http://www.douban.com/group/procrastinators/<br />
http://types.yuzeli.com/survey/tuoyan/<br />
http://structuredprocrastination.com/Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-29620017630002682332012-07-21T08:50:00.001-04:002012-07-21T08:50:35.478-04:00拖延症的词条解释<h1>
拖延症</h1>
<div class="place">
<div class="l" id="openCatp">
开放分类:<a href="http://fenlei.hudong.com/%E5%BF%83%E7%90%86%E5%AD%A6/?prd=zhengwenye_left_kaifangfenlei" target="_blank" title="心理学">心理学</a><a href="http://fenlei.hudong.com/%E7%94%9F%E5%91%BD%E7%A7%91%E5%AD%A6/?prd=zhengwenye_left_kaifangfenlei" target="_blank" title="生命科学">生命科学</a><a href="http://fenlei.hudong.com/%E7%A4%BE%E4%BC%9A%E7%A7%91%E5%AD%A6/?prd=zhengwenye_left_kaifangfenlei" target="_blank" title="社会科学">社会科学</a><a href="http://fenlei.hudong.com/%E7%A7%91%E5%AD%A6/?prd=zhengwenye_left_kaifangfenlei" target="_blank" title="科学">科学</a><a href="http://fenlei.hudong.com/%E8%A1%8C%E4%B8%BA%E5%AD%A6/?prd=zhengwenye_left_kaifangfenlei" target="_blank" title="行为学">行为学</a></div>
<div class="r">
<a class="editterm" href="http://www.hudong.com/editdocauth/%E6%8B%96%E5%BB%B6%E7%97%87">编辑词条</a><a class="partake" href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="share_link">分享</a></div>
</div>
<div class="information" id="unifyprompt">
<div class="summary">
<div class="img img_r">
<a href="http://tupian.hudong.com/a0_86_87_20300000432220133877871407756_jpg.html" target="_blank" title="拖延症"><img alt="拖延症" src="http://a0.att.hudong.com/86/87/20300000432220133877871407756_140.jpg" title="拖延症" /></a><strong> </strong></div>
<div class="img img_r">
<strong>拖延症</strong>
</div>
拖延症(英文:Procrastination)指的是非必要、后果有害的推迟行为。这个词并不是一个严格的<a href="http://www.hudong.com/wiki/%E5%BF%83%E7%90%86%E5%AD%A6" target="_blank">心理学</a>或医学术语,但严重或经常的拖延行为,常常是一些深层问题的表现。拖延现象现已成为管理学家和心理学家研究的一个重要课题。<br />
<span><a action="editsummaryhref" href="">编辑摘要</a></span>
</div>
</div>
<fieldset class="l" id="catalog">
目录<br />
<dl class="l-he22" id="full"><dd><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#1">1 简介</a></dd><dd><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#3">2 成因</a></dd><dd><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#11">3 生理</a></dd><dd><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#13">4 类型</a></dd><dd><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#15">5 表现</a></dd><dd class="full" id="doccatalog_show"><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#"><em> </em></a></dd></dl>
</fieldset>
<div id="content">
<div class="content_h2 bac_no">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="1"> </a>拖延症 -
简介</h2>
</div>
<div class="img img_r" id="changeTheId-wrap-img-0" style="width: 300px;">
<a href="http://tupian.hudong.com/a0_78_59_01300000329092125957593197613_jpg.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="Procrastination"><img alt="Procrastination" id="changeTheId-img-0" src="http://a0.att.hudong.com/78/59/01300000329092125957593197613_s.jpg" title="Procrastination" /></a><a class="magnify" href="http://tupian.hudong.com/a0_78_59_01300000329092125957593197613_jpg.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="Procrastination"></a><strong>拖延症 </strong></div>
拖延症,英文Procrastination。取意”将之前的事情放置明天”。拖延症总是表现在各种小事上,但日积月累,特别影响个人发展。 <br />
该词的最初出现在在爱德华·霍尔出版于1542年的书里。<br />
<a class="innerlink" href="http://www.hudong.com/wiki/%E3%80%8A%E5%9C%A3%E7%BB%8F%E3%80%8B" target="_blank" title="《圣经》">《圣经》</a>从希腊文翻译为英文的过程中,拖延更多被译成“罪过(sin)”,直到<a class="innerlink" href="http://www.hudong.com/wiki/%E5%B7%A5%E4%B8%9A%E9%9D%A9%E5%91%BD" target="_blank" title="工业革命">工业革命</a>后,拖延才逐渐具有了现在的含义,被视为“以推迟的方式逃避执行任务或做决定的一种特质或行为倾向,是一种自我阻碍和功能<a class="innerlink" href="http://www.hudong.com/wiki/%E7%B4%8A%E4%B9%B1" target="_blank" title="紊乱">紊乱</a>行为”。 <br />
“拖延症”正式成为病症,相关的研究开始于20世纪末。 <br />
单纯的做事拖拉或是懒得去做,只能定义为“拖延”,也仅是一种坏习惯,当“拖延”已经影响到情绪,如出现强烈自责情绪,强烈负罪感,不断的自我否定、自我贬低,伴生出<a class="innerlink" href="http://www.hudong.com/wiki/%E7%84%A6%E8%99%91%E7%97%87" target="_blank" title="焦虑症">焦虑症</a>、<a class="innerlink" href="http://www.hudong.com/wiki/%E6%8A%91%E9%83%81%E7%97%87" target="_blank" title="抑郁症">抑郁症</a>、<a class="innerlink" href="http://www.hudong.com/wiki/%E5%BC%BA%E8%BF%AB%E7%97%87" target="_blank" title="强迫症">强迫症</a>等心理疾病时,才能称之为“拖延症”。<sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_1" name="hdend_1" title="未名心理学网 拖延症2008-12-31">[1]</a></sup><sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_2" name="hdend_2" title="择言网:拖延症介绍">[2]</a></sup> <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="3"> </a>拖延症 -
成因</h2>
</div>
拖延症的成因很多,大致可归纳为三类:<br />
<a href="" name="5"> </a><h3>
特质论</h3>
<div class="img img_r" id="changeTheId-wrap-img-1" style="width: 300px;">
<a href="http://tupian.hudong.com/a4_88_83_01300000432220133877839452028_jpg.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="拖延症"><img alt="拖延症" id="changeTheId-img-1" src="http://a4.att.hudong.com/88/83/01300000432220133877839452028_s.jpg" title="拖延症" /></a><a class="magnify" href="http://tupian.hudong.com/a4_88_83_01300000432220133877839452028_jpg.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="拖延症"></a><strong>拖延症</strong></div>
研究者把拖延视为个性特质的反映,受个体尽责性、特质<a class="innerlink" href="http://www.hudong.com/wiki/%E7%84%A6%E8%99%91" target="_blank" title="焦虑">焦虑</a>、懒惰、低自我效能感等个性根源影响。 <br />
<a href="" name="7"> </a><h3>
动机论</h3>
研究者认为期望水平、恐惧失败、<a class="innerlink" href="http://www.hudong.com/wiki/%E5%AE%8C%E7%BE%8E%E4%B8%BB%E4%B9%89" target="_blank" title="完美主义">完美主义</a>定向、自我妨碍和自律需求都会影响到个体的拖延行为。 <br />
<a href="" name="9"> </a><h3>
调节论</h3>
研究者将拖延视为行为自我调节的失败,是个体不能很好地协调个性、动机、认知与情境因素的结果。<sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_3" name="hdend_3" title="微微健康网:你是“拖延症”患者吗?2011年08月19日">[3]</a></sup> <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="11"> </a>拖延症 -
生理</h2>
</div>
关于拖延症的生理学根源研究,目前(指2009年)大多围绕大脑前<a class="innerlink" href="http://www.hudong.com/wiki/%E9%A2%9D%E5%8F%B6" target="_blank" title="额叶">额叶</a>皮层的功能。这个脑区负责<a class="innerlink" href="http://www.hudong.com/wiki/%E5%A4%A7%E8%84%91" target="_blank" title="大脑">大脑</a>的执行功能,比如计划、冲动的控制和注意力,还起到过滤器的作用,降低来自其他脑区分散注意力的刺激。前额叶皮层的损伤或者低活动性,会导致过滤杂扰刺激的能力降低,进而使处理任务的组织能力变差。 <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="13"> </a>拖延症 -
类型</h2>
</div>
<div class="img img_r" id="changeTheId-wrap-img-2" style="width: 300px;">
<a href="http://tupian.hudong.com/a4_83_84_01300000432220133877843886828_jpg.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="拖延症"><img alt="拖延症" id="changeTheId-img-2" src="http://a4.att.hudong.com/83/84/01300000432220133877843886828_s.jpg" title="拖延症" /></a><a class="magnify" href="http://tupian.hudong.com/a4_83_84_01300000432220133877843886828_jpg.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="拖延症"></a><strong>拖延症</strong></div>
哥伦比亚大学组织心理学系的教授安吉拉将拖延区分成两种状态:消极拖延和积极拖延,相比之下,后者往往更喜欢在压力下工作,这样他们可以做出更深思熟虑的决定,并更及时地实行。 <br />
弗拉里博士定义了三种基本的拖拉者:<br />
1、鼓励型,或者说找刺激型,他们盼着最后几分钟忙碌带来的快感。<br />
2、逃避型,他们回避失败的恐惧,甚至害怕成功,但实际上他们非常关心别人怎么看自己,他们更希望别人觉得他不够努力而不是能力不足。<br />
3、决心型,他们没法下决心。不下决心就可以回避对应对事情的拖拉。 <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="15"> </a>拖延症 -
表现</h2>
</div>
<div class="img img_r" id="changeTheId-wrap-img-3" style="display: block; width: 198px;">
<a href="http://tupian.hudong.com/a0_33_94_01300000377725124202944940523_jpg.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="拖延症"><img alt="拖延症" id="changeTheId-img-3" src="http://a0.att.hudong.com/33/94/01300000377725124202944940523_s.jpg" title="拖延症" /></a><a class="magnify" href="http://tupian.hudong.com/a0_33_94_01300000377725124202944940523_jpg.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="拖延症"></a><strong>拖延症</strong></div>
1、没有自信。
因为每次完成任务都达不到自己最高的能力,对自我能力的评估会越来越低。<br />
2. 我太忙。<br />
我一直拖着没做是因为我一直很忙。<br />
3、顽固。<br />
你催我也没有用,我准备好了自然会开始做。<br />
4. 操控别人。<br />
他们着急也没用,一切都要等我到了才能开始。<br />
5. 对抗压力。<br />
因为每天<a class="link_red" href="" target="" title="压力很">压力很</a>大,所以要做的事情一直被拖下来。 <br />
6. 受害者<a class="innerlink" href="http://www.hudong.com/wiki/%E5%BF%83%E6%80%81" target="_blank" title="心态">心态</a>。 <br />
我也知道自己怎么会这样,别人能做的自己做不到。 <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="17"> </a>拖延症 -
影响</h2>
</div>
<div class="img img_r" id="changeTheId-wrap-img-4" style="width: 300px;">
<a href="http://tupian.hudong.com/a3_72_85_01300000432220133877858629758_png.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="拖延症"><img alt="拖延症" id="changeTheId-img-4" src="http://a3.att.hudong.com/72/85/01300000432220133877858629758_s.png" title="拖延症" /></a><a class="magnify" href="http://tupian.hudong.com/a3_72_85_01300000432220133877858629758_png.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="拖延症"></a><strong>拖延症</strong></div>
1、因拖拉耽误工作或学业;<br />
2、影响情绪,破坏团队协作和人际关系;<br />
3、拖垮身体。<br />
德国研究表明,慢性长期的拖延行为,暗示着潜在的<a class="innerlink" href="http://www.hudong.com/wiki/%E5%BF%83%E7%90%86" target="_blank" title="心理">心理</a>及<a class="innerlink" href="http://www.hudong.com/wiki/%E7%94%9F%E7%90%86" target="_blank" title="生理">生理</a>紊乱。一拖再拖,让他们错过了体检、错过了一些疾病早期治疗的时机。 <br />
4、拖延的人自律性不强:<br />
这些人通常习惯晚睡,喝酒时也往往超过自己预期的酒量。同样,他们即便决定要戒烟、运动、减肥等,也很难迈出实质性的一步。<sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_3" name="hdend_3" title="微微健康网:你是“拖延症”患者吗?2011年08月19日">[3]</a></sup> <br />
<div class="content_h2">
<h2 class="mar-t10">
<a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#" id="bjbd" target="_self"> </a><a href="" name="19"> </a>拖延症 -
对策</h2>
</div>
<a href="" name="21"> </a><h3>
对症解决</h3>
1、完美主义型的拖延者:做事情要尽善尽美,所以不愿匆忙开始。<br />
解决办法:允许不完美的存在,每有一点进步都鼓励自己。意识到自己不可能不犯任何错误,因此不必要求自己达到完美。<br />
2、容易颓废:任务太难了,明天再做吧。明日复明日,一拖再拖。<br />
解决办法:把任务分成比较容易的小块,化整为零,降低任务难度;推迟自己要放弃的心态,每天尽可能多完成任务。<br />
3、自我贬低:常常不能很好地完成任务,自己的评价越来越低,当自己能很好地完成了任务时却认为是运气。<br />
解决办法:对自己有信心,接受别人对自己工作的赞扬,自己对自己进行勉励。<sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_4" name="hdend_4" title="他生活:什么原因造成了拖延症2012-02-20">[4]</a></sup> <br />
<a href="" name="23"> </a><h3>
行为纠正</h3>
<div class="img img_r" id="changeTheId-wrap-img-5" style="width: 300px;">
<a href="http://tupian.hudong.com/a4_11_86_01300000432220133877861235457_jpg.html?prd=zhengwenye_left_neirong_tupian" target="_blank" title="拖延症"><img alt="拖延症" id="changeTheId-img-5" src="http://a4.att.hudong.com/11/86/01300000432220133877861235457_s.jpg" title="拖延症" /></a><a class="magnify" href="http://tupian.hudong.com/a4_11_86_01300000432220133877861235457_jpg.html?prd=zhengwenye_left_neirong_tupian" id="enlargegif" name="enlargegif" target="_blank" title="拖延症"></a><strong>拖延症</strong></div>
1、主次有序。<br />
对工作进行有效的分类,把它们分成急切并重要、重要但不急切、急切但不重要、不急切也不重要四类,把需要做的事情写在本上列出来,达到最好的提醒效果。<br />
2、有效切割。<br />
把大任务或完成时间比较长的任务切割成一个个小任务,按时间进程确定一系列的具体目标,然后再逐个攻破,并在每个小任务完成后,都对自己的执行力在内心奖励一次。 <br />
3、消除干扰。<br />
将这一切可能影响工作效率的东西统统屏蔽掉,全心全意地去做事情。<br />
4、互相监督。<br />
有拖拉<a class="innerlink" href="http://www.hudong.com/wiki/%E4%B9%A0%E6%83%AF" target="_blank" title="习惯">习惯</a>的同事或朋友相互间也可以在完成任务的过程中相约相互鼓励和督促,这样比单打独斗容易得多,会有效降低拖延的概率。<sup><a href="http://www.hudong.com/wiki/%E6%8B%96%E5%BB%B6%E7%97%87#hdtop_3" name="hdend_3" title="微微健康网:你是“拖延症”患者吗?2011年08月19日">[3]</a></sup> </div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-47354987587016142272012-07-21T07:01:00.001-04:002012-07-21T08:29:49.094-04:00是什么让你日渐平庸,泯然众人------从you deserve a better one说起"you deserve a better one", 相信很多人可以从这句安慰性的话收获自信和力量。可是认真想一想,既然you deserve a better one,那说明从对方的角度来说you are a better one,从逻辑推理的角度来说,就很难理解为什么从优化配置的角度讲,why a better one did not become a chosen one? 除非对方是个特没自信的人。所以也许这句话只能从反面来理解,you are a good one,but not a better one,典型的“你是个好人的,可是我……“的英文版。<br />
<br />
如此含蓄的表达也许不会伤害我们的自尊心,或是可以在刻意的自我暗示下,真的觉得自己站在了道德高点,是一个a better one,典型的打落牙齿往肚子里吞,还自我安慰没有随地乱喷,污染环境的自我麻醉。<br />
<br />
所以在今天,30岁的当头,还是听到了这句"you deserve a better one"后,片刻的自我感觉良好后,随之而来的就是淡淡的忧伤了。不由得自己开始真正的反省自己的人生,是什么让自己日渐平庸,泯然众人,最后只能收获"you deserve a better one"的评语。<br />
<br />
典型的人物传记的写法,往往要从他的性格,成长环境,长大后的际遇等等方面来分析他的内心世界的变迁和行动动机。从小到大,虽然说对自己的性格总是有过断断续续,模糊的感悟,可是一直没有认真的尝试去了解自己,把握自己的优缺点。那今天希望可以真真正正的客观理性地看待自己一回。<br />
<div style="color: purple;">
<br /></div>
<div style="color: black;">
性格分析:</div>
<div style="color: black;">
星座这东西,一直以来嘴上不信,总是表露出一种不屑的态度,也许就是骨子里的一种自信,认为没有什么是自己不能改变的,所以下意识的拒绝去认识自我。既然今天已经下定决心要真正地对待自己的内心那么就认真的研究一番了。那么就google了天蝎座的性格特征,摘录如下:</div>
<div style="color: blue;">
<br /></div>
<div style="color: blue;">
11月10日出生的人对自己或是他们所做的东西,总是设法做最彻底的改变。他们个人的蜕变过程有时候似乎十分缓慢,并且可说是痛苦不堪,进入最后阶段时更是得面临一番激烈的托儿所或缠斗。这一天出生的人就好像一只尚未蜕变的蛹,在破草而出成为美丽的蝴蝶之前,或许必须与世隔绝地虫茧中度过一段很长的时间,甚至是经年累月;也正如同蝌蚪一般,他们刚开始的模样其实和将来的面貌根本完全不相像。 </div>
<div style="color: blue;">
<br /></div>
<div style="color: blue;">
然而矛盾的是,这一天出生的人却常常给人一种极为坚定且恒久不变的印象。即便如此,若能时时注意他们的一举一动,像是察看手表上的时间一样,将会发现某种
几乎感觉不出来的进展确实正在悄悄地发生。相同地,就工作上而言,11月10日出生的人会永无止境地追求完美,并且总是能奇迹似地将简陋的材料转变为十分完好的产品,或是独立做出有益的贡献,让周遭的人刮目相看。 </div>
<div style="color: blue;">
<br /></div>
<div style="color: blue;">
此外,大多数11月10日出生的人还拥有一种熟知事情运作状况的本能,和信人惊叹的耐性,并且精通于管理生活环境。另一方面来看,虽然他们本身极富魅力,不过对于人性却普遍缺乏了解与认识,而且还可能遇到社交障碍及自我中心的问题。因此,今天出生的人如果能够领会社会接触的重要性,并在有需要时全力支持、信赖某个可靠的人,最后将后获得相当大的成就。但是若太过专注于个人的成长,忽略了拓展自己的事业及地位,可能就会觉得生活只是一项永无休止的搏斗罢了。
所谓"结交权贵之十胜读十年书",这句话听起来可能有点现实或太过露骨,不过的确也道出了部分的真实。 </div>
<div style="color: blue;">
<br /></div>
<div style="color: blue;">
11月10日出生的人天性太过挑剔、认真而且不容易满足,所以某些时候或许会遭受别人的谴责。同时,他们极度严肃的性格及独特的癖好亦可能会惹怒某些人。
事实上,他们的朋友、家人或情人必须做到百分之百的完全忠诚与信任,才有办法年复一年、恒久地站在他们这边,给予他们支持与协助。</div>
<div style="color: blue;">
<br /></div>
<div style="color: blue;">
11月10日出生的人在探索世界时并非总是自信满满,但即使偶尔感到沮丧失意,他们仍能保持一种自豪,坚信自已的价值。虽然他们的内心世界在别人眼中可能
黑暗浑沌、摸不着边际,不过他们自己却相当了解并处之泰然。就好像是位盲人一样,他们已经彻底地探索过这个内部地带,因此对于自己的能力与极限也有了务实
的看法。所以难怪他们很少会冲得过头,但反过来说,他们也可能会有做得不够的危险。因此,充分了解自我便成了这些复杂却又魅力十足者的救星,同时也是一种障碍。</div>
<div style="color: blue;">
<br /></div>
<strong style="color: blue;">建议</strong><span style="color: blue;"> </span><br style="color: blue;" /><span style="color: blue;">
随时注意自己给别人带来的麻烦。走出自我的牢笼,与整个世界共享你的喜怒哀乐。别害怕大放光芒、展露身手。请常常打开情感的水闸,并且多信任别人,同时试着培养弹性的生活形态。 </span><br />
<br />
看完这段,真的是陷入了一种无话可说的境地。每个人都在寻求自我认同和别人的认同。”就像是我这么做肯定有我的道理,我不需要和别人解释,但我知道你一定懂的“。其实真正的完美人性观察者就是你自己,没有其他人能比你自己更了解你,关键在于你是否愿意接受一个真正的自我。<br />
<br />
那么总结一下自己的性格特点:<br />
<br /> 真正的完美主义者<br />
无法忍受过程或是结果的瑕疵,做事总是不由自主地精益求精,任何有可能出问题的地方都忍不住要验证一番才能放心。如果对结果的预测是不够完美,那么总是会涌动着推倒重来的冲动。结果就是订立目标后,行动非常缓慢,总是不停的在试错,重构。<br />
<br />
敏锐的直觉主义者<br />
足够聪明而且第六感敏锐,非常善于从与人相处的细节中,推理出对方的心理活动和看法。太过敏锐,以至于其他人在与你相处的过程中,任何算计,利己的想法都逃不过我的观察,最后只有没什么心机,热情的红色人格或是隐忍,能为别人考虑的绿色人格才有可能成为我的好友。在工作的场合,太容易因此而产生负面的情绪,因此需要经常调整自己的情绪。<br />
<br />
兴趣驱动型<br />
对于感兴趣的事情,可以爆发出强大的行动力和学习能力,短时间内就成为该领域的行家里手。 <br />
<br />
过于含蓄,不善于谈判<br />
因为不需要很深入的交流就可以猜出对手方的想法,所以为人处事时多留有余地,更喜欢用一种含蓄的方式去暗示,如果对方不够聪明或是有利己的想法,往往会觉得此人不值得相交,暗暗生气。不善于在面对面的交流中坦率直接地说出自己的看法。有时候在与别人沟通的的过程中就会出现问题,一旦形成负面的印象,就很难说服自己去努力发现对方的亮点,包容对方。<br />
<br />
自我认知<br />
对于自己其实认识还是比较清醒的,由此甚至会产生自恋的情绪。对自己的能力和定位相当明晰,不太会去做超出现阶段自己能力的事情,总归是一步一个脚印的规划。<br />
<br />
拖延症受害者<br />
足够耐心的拖延症受害者,即时行动力不强,有些事情很难克服自己的惰性,总是想还有明天可以做,久而久之就慢慢的拖延下来了。<br />
<br />
总结起来,可以这么形容自己,对自己的认知和定位很清楚,能力足够强大而相应的在与别人相处的过程中缺乏耐心和包容度,拖延症受害者,从而有很多合理的目标因为拖延而没有实现。<br />
<br />
如此就对自己看方抓药了:<br />
<div style="color: red;">
处世方面,常常打开情感的水闸,并且多信任别人,同时试着培养弹性的生活形态。随时注意自己给别人带来的麻烦。走出自我的牢笼,与整个世界共享你的喜怒哀乐。别害怕大放光芒、展露身手。 我觉得没有比这更好的总结了。</div>
<div style="color: red;">
<br /></div>
<div style="color: red;">
克服拖延症, 不客气的说这真是个big problem,简直是要后天克服你基因中的惰性因子。如何完成呢,只能首先研究研究拖延症的案例,苛刻地虐待自己了。也许一个详细合理的日程规划就可以迈出成功的第一步。</div>
<div style="color: black;">
<br /></div>
<div style="color: black;">
希望今天就是我change myself的独立宣言,也希望以后的若干天内,我可以自豪的blog自己的进步和改变!</div>
<br />
<span style="color: blue;"> </span><br />
<span style="color: blue;"> </span> <br />
<br />
<br />Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-85171445212040311632011-08-14T06:15:00.001-04:002011-08-14T06:15:43.452-04:00人一辈子要有一次壮游<div><div style="padding-top:8px;overflow-x:hidden;"><p> 放大你的格局,人一辈子要有一次壮游<br></p> <p>有一种旅行,方法很贫穷,却可以改变人的一生。这种旅行,西方从16世纪末传承至今;中国却已失落数百年。那就是Grand Tour──壮遊。培养独自「闯」的能力,才能开创个人与国家的竞争力。<br> <img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi0144u7/7dg2p.jpg"><br> </p> <p>不仅深入自然 更深入民间<br> 其实,趁青年时云游四方自古有之。当时,有一个专有名词"壮游"。<br> 壮游,指的是胸怀壮志的游历,包括三个特点:旅游时间"长"、行程挑战性"高"、与人文社会互动"深"。特别是要经过规划,以高度的意志力彻底执行。壮游不是流浪,它怀抱壮志,具有积极的教育意义。<br> 它与探险也不太相同,壮游者不局限于深入自然,更要深入民间,去体验世界之大。<br> <br> <img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi014laf/159sfa.jpg"></p> <p>这个名词源自唐朝,那是一个壮游的时代。</p> <p> 高僧玄奘到天竺(印度)取经,就是古今中外最知名的壮游之一。诗圣杜甫也曾在苏州准备好船,差点东游到日本,他自传性的《壮游诗》就写道:东下姑苏台,已具浮海航。到今有遗恨,不得穷扶桑……也因为这首诗太有名,留下"壮游" 一词。<br> <br> <img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi014xLI/IgxQC.jpg"></p> <p>"中国曾经有很长一段时间有很伟大的壮游文化,真是了不得!"年轻时代曾在欧洲壮游的艺术评论家蒋勋指出," 你看李白,他是吉尔吉斯人,可以跑这么远到大唐朝来。所以他们的诗,有一种豪迈,有一种气度,它不是书斋里的诗。"但明朝以后,实行闭关锁国的政策,导致中国国力日渐衰落。<br>壮游:欧洲精英的成年礼</p> <p> 巧的是,在欧洲也有一种旅行叫"GrandTour",恰恰好可以译成"壮游"。</p> <p> 16世纪末,英国贵族子弟流行在学业结束后,与一位家庭教师或贴身男仆,渡过英吉利海峡,到巴黎、罗马、威尼斯、佛罗伦萨等欧陆城市进行壮游。除了探索文化的根源,这场旅行重要的吸引力在于——它是一场摆脱了父母束缚又兴味盎然的文化盛宴。</p> <p><br>到了19世纪,壮游已经变为欧洲精英的成年礼,针对这段壮游时光,出现了一个专有名词"TheGapYear "(空当年)。</p> <p> 如今,壮游也仍是西方国家,尤其是欧洲教育中重要的一环。据英国教育部的报告,英国目前有20万~25万介于16~25岁之间的年轻人,正处于"空当年"当中。<br> <img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi014SbT/9MIdS.jpg"><br> </p> <p>壮游之后找到人生的方向</p> <p> 英国教育部的报告认为:"空当年"可增加外语能力,提升个人竞争力,包括独立精神、人际关系、解决问题的能力、自我约束力和沟通能力。更重要的是,许多人因此找到人生的方向,那是完成自我的最大动能。</p> <p> 切·格瓦拉是推翻古巴亲美独裁政权的革命家。他要不是在医学院四年级时,和一位学长骑着重机车,展开了为期9 个月、穿越5个国家的万里壮游,日后可能只是一个历史上默默无闻的医生。<br> <img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi0152ia/Z1eqR.jpg"><br> </p> <p>史上最伟大的作品之一《史记》,也是在司马迁壮游后完成的。20岁那年,其父太史公司马谈给他一辆马车,指导他有目的、有计划地到广阔的社会中实地考察,接触壮丽河山和四方之民的生活习俗,并搜求历史传说与各种史料。司马迁圆满完成了这次学术旅行,"读无字之书,禀山川豪气",最后终于"究天人之际,通古今之变,成一家之言"。</p> <p> 环游半个地球之后,在中国呆过多年,完成旅游文学著作《甲骨文》的作者美国人何伟认为,若是有更多美国人曾在世界各地壮游,"了解那块地方的历史、文化,那么今天就不会发动攻打伊拉克的战争。"他指出,有壮游传统的欧洲,比美国更接受联合国这种国际组织,也更有世界和平的共识。</p> <p> 确实,每个人一生中,都值得进行一次壮游,不管你有没有钱。</p> <p> 引用电影明星约翰·巴里莫尔的话:"人不会老去,直到,悔恨取代了梦想。"</p> <p> 该用这句话,鼓励自己,去壮游。<br></p> <p><img style="border-bottom-color:#000000;border-top-color:#000000;border-right-color:#000000;border-left-color:#000000" border="0" src="http://pic.yupoo.com/penti/Bi0152EH/ePt2O.jpg"></p> <p> </p> <p>来源:<a href="http://www.douban.com/note/53848323/"><a href="http://www.douban.com/note/53848323/">http://www.douban.com/note/53848323/</a></a></p><br><br>打喷嚏链接:<a href="http://www.dapenti.com/blog/more.asp?name=agile&id=48000"><a href="http://www.dapenti.com/blog/more.asp?name=agile&id=48000">http://www.dapenti.com/blog/more.asp?name=agile&id=48000</a></a> <br><br><a href="http://union.dangdang.com/transfer/transfer.aspx?from=P-267767&backurl=http://product.dangdang.com/product.aspx?product_id=20930988">1988——我想和这个世界谈谈(韩寒最新小说)</a><br><br><a href="http://www.vancl.com/WebSource/WebSource.aspx?source=dapenti&url=http://www.vancl.com/"><img src="http://union.vancl.com/adpic.aspx?w=560&h=80" border="0"></a> <br><br>用手机上<a href="http://www.dapenti.com">喷嚏网</a>:m.dapenti.com 每周精华尽在【<a href="http://www.dapenti.com/blog/blog.asp?subjectid=126&name=dapenti">喷嚏周刊</a>】 <a href="http://v.yupoo.com/?utm_source=dapenti&utm_medium=lianjie&utm_campaign=dptrss" title="又拍图片管家">《喷嚏图卦》图片托管于又拍网</a></div><br><br><div style="font-size:14pt;text-align:left"><a href="http://www.dapenti.com/blog/more.asp?name=agile&id=48000"><a href="http://www.dapenti.com/blog/more.asp?name=agile&id=48000">http://www.dapenti.com/blog/more.asp?name=agile&id=48000</a></a></div><br><br><br><div style="color:rgb(60%,60%,60%)">Sent with <a href="http://itunes.apple.com/cn/app/mobilerss-hd-free-google-rss/id393767734?mt=8" style="text-decoration:underline;color:rgb(60%,60%,60%)">MobileRSS HD FREE</a></div></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-51737124276579365302011-08-06T03:18:00.001-04:002011-08-13T00:24:39.851-04:00那些不再出版的内容(转)<div><div style="padding-top:8px;overflow-x:hidden;"><div><a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsidekick.myblog.hk%2Farchives%2F2011%2F07%2F30%2F1727"><img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsidekick.myblog.hk%2Farchives%2F2011%2F07%2F30%2F1727" alt=" 被電子報-那些不會再出版的內容" width="51" height="61" title="被電子報-那些不會再出版的內容"></a></div><p>7月29日晚上,很多內地的媒體工作者都收到了中宣部的通知:</p><blockquote><p>鑑於7.23涌溫線特叮重大鐵路交通事故,境內外輿情趨於複雜,各地方媒體包括子報子刊及所屬新聞網站對事故相關報道要迅速降溫,除正面報道和權威部門發布動態消息之外,不再做任何報道,不發任何評論。</p></blockquote><p>在微博發此圖的媒體工作者說:"高铁事故大结局,请自行看图。一声叹息,呐喊彷徨。 "<br />
<a title="730通知 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989010620/"><img src="http://farm7.static.flickr.com/6134/5989010620_de57189904.jpg" alt="5989010620 de57189904 被電子報-那些不會再出版的內容" width="440" height="324" title="被電子報-那些不會再出版的內容"></a></p><p>另一位說:"今夜,百家报纸在撤版,千位记者被毙稿;中国,万个游魂无处安放,亿个真相正在破碎。这个国家,无数只恶棍的手,在羞辱着你。 "</p><p>那千辛萬苦做好了的報道該怎麼辦?<br />
大家都不約而同的,將 <a href="http://weibo.com/k/%25E9%2582%25A3%25E4%25BA%259B%25E4%25B8%258D%25E4%25BC%259A%25E5%2586%258D%25E5%2587%25BA%25E7%2589%2588%25E7%259A%2584%25E5%2586%2585%25E5%25AE%25B9&refer=miniblog_jing">#那些不會再出版的內容#</a> ,上載到微博給大家看。<br />
於是,這個晚上的微博,整個都是各地報章本來於明天刊出的版面,天朝又多了一個新發明,就是"被電子報"!<br />
而更可惜的是,就算是"被電子報",它們的生命亦是稍縱即逝,大部份都被刪掉了。眼看著網友們都不斷的重新上載,我這個"境外勢力",也好應該試著將這些內容帶出牆外。<br />
<br />
<strong>钱江晚报:</strong><br />
钱江晚报记者:"这是读者们永远也不可能在报摊上,信箱中,网络里能看到的明天的钱江晚报。感谢为这几个版面付出心血的同事们!向你们致敬!"<br />
<a title="730錢江晚報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989010724/"><img src="http://farm7.static.flickr.com/6121/5989010724_28c8f3d01e.jpg" alt="5989010724 28c8f3d01e 被電子報-那些不會再出版的內容" width="500" height="264" title="被電子報-那些不會再出版的內容"></a></p><p>另一張更清晰的版本:<br />
<a title="730錢江晚報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989011382/"><img src="http://farm7.static.flickr.com/6124/5989011382_9d158f434a_b.jpg" alt="5989011382 9d158f434a b 被電子報-那些不會再出版的內容" width="754" height="1024" title="被電子報-那些不會再出版的內容"></a></p><p>錢江晚報的錢經周刊<br />
<a title="730錢江晚報錢經周刊 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5988449135/"><img src="http://farm7.static.flickr.com/6128/5988449135_371d37d933_b.jpg" alt="5988449135 371d37d933 b 被電子報-那些不會再出版的內容" width="720" height="960" title="被電子報-那些不會再出版的內容"></a></p><p><strong>新京報:</strong><br />
新京报资深记者:"1分钟前接到消息,我的版最终也没坚持到与读者见面,新京报坚持又坚持、妥协又妥协之后,仅存的4个版也被和谐。长歌当哭。没办法,我们要为2000多新京报员工的饭碗考虑。贴版,以示纪念,注意标题。 "</p><p>另一位新京報人說:"《我们都是幸存者》没能幸存。我们尽力了,对不起!祭奠事逝去的人,祭奠夭折的版。"<br />
<a title="730新京報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989010912/"><img src="http://farm7.static.flickr.com/6140/5989010912_edf491f8b1_b.jpg" alt="5989010912 edf491f8b1 b 被電子報-那些不會再出版的內容" width="228" height="1024" title="被電子報-那些不會再出版的內容"></a></p><p>更清晰的版本:<br />
<a title="730新京報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989010656/"><img src="http://farm7.static.flickr.com/6125/5989010656_6cc77bb137_b.jpg" alt="5989010656 6cc77bb137 b 被電子報-那些不會再出版的內容" width="542" height="768" title="被電子報-那些不會再出版的內容"></a></p><p><a title="730新京報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989010852/"><img src="http://farm7.static.flickr.com/6130/5989010852_97eb0f8567_b.jpg" alt="5989010852 97eb0f8567 b 被電子報-那些不會再出版的內容" width="542" title="被電子報-那些不會再出版的內容"></a></p><p><a title="730新京報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989106236/"><img src="http://farm7.static.flickr.com/6143/5989106236_13baab15f9_z.jpg" alt="5989106236 13baab15f9 z 被電子報-那些不會再出版的內容" width="440" height="625" title="被電子報-那些不會再出版的內容"></a><br />
然後,新京報7月30日出街的版面是這樣的:<br />
新京報人說:"温州动车追尾"头七",警报不断。新京报明日头版:七日雨未绝 一天两预警。"<br />
大家都聽懂了弦外之音吧?<br />
<a title="730新京報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989011198/"><img src="http://farm7.static.flickr.com/6141/5989011198_f77b93f80a_b.jpg" alt="5989011198 f77b93f80a b 被電子報-那些不會再出版的內容" width="663" height="747" title="被電子報-那些不會再出版的內容"></a></p><p>根據這篇《<a href="http://www.chinese.rfi.fr/%E4%B8%AD%E5%9B%BD/20110729-%E4%B8%AD%E5%AE%A3%E9%83%A8%E4%B8%A5%E4%BB%A4%E5%8F%AB%E5%81%9C%E6%B8%A9%E5%B7%9E%E5%8A%A8%E8%BD%A6%E6%8A%A5%E9%81%93">中宣部严令叫停温州动车报道</a>》:</p><blockquote><p>更有报社编辑呼吁报社老总鼓起勇气抵制禁令。媒体人阿丁呼吁,"媒体老总们,请在此刻积蓄勇气、唤醒良知、拒绝附逆、干掉猥琐、放行真相;禁令是用来突破的不是用来奴才听令的,绳索是用来挣脱的不是拿来自缚手脚的,这一回,能不能站着把新闻做了?"</p></blockquote><p>很可能,因此,我們就有機會看到這些在今天出版的:<br />
<strong>京華時報:</strong><br />
<a title="730京華時報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5988449807/"><img src="http://farm7.static.flickr.com/6132/5988449807_6fabf2fc50_b.jpg" alt="5988449807 6fabf2fc50 b 被電子報-那些不會再出版的內容" width="252" height="1024" title="被電子報-那些不會再出版的內容"></a></p><p><strong>青年時報:</strong><br />
<a title="730青年時報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5989011172/"><img src="http://farm7.static.flickr.com/6011/5989011172_eb02bc4699_b.jpg" alt="5989011172 eb02bc4699 b 被電子報-那些不會再出版的內容" width="640" height="1024" title="被電子報-那些不會再出版的內容"></a></p><p><strong>經濟觀察報:</strong><br />
<a title="730經濟觀察報 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5988449629/"><img src="http://farm7.static.flickr.com/6130/5988449629_3c7d5978b0_b.jpg" alt="5988449629 3c7d5978b0 b 被電子報-那些不會再出版的內容" width="440" height="719" title="被電子報-那些不會再出版的內容"></a></p><p>其實,這些日子,很多報紙都很敢言:<br />
<a title="723頭條 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5988450119/"><img src="http://farm7.static.flickr.com/6128/5988450119_1820127643_b.jpg" alt="5988450119 1820127643 b 被電子報-那些不會再出版的內容" width="725" height="1024" title="被電子報-那些不會再出版的內容"></a></p><p>不得不提,7月29日的這四份南方報紙!<br />
成都晚报记者 :"【很赞的头版】明儿个就别看了,没戏了。再看今天头版,广东的报纸,一起开编前会?故意商量好的么? "<br />
<a title="729广东的报纸 by sidekickick, on Flickr" href="http://www.flickr.com/photos/sidekickcat/5988449107/"><img src="http://farm7.static.flickr.com/6138/5988449107_e5f768c16a_z.jpg" alt="5988449107 e5f768c16a z 被電子報-那些不會再出版的內容" width="440" height="638" title="被電子報-那些不會再出版的內容"></a></p><p>尤其是南方都市報,給我們的這16版!<br />
@王钊君:广东乱吗?很多外地朋友问。直到我加入媒体行业才明白,广东的乱部分是因为这里较为宽松的媒体环境,记者更能够揭露社会的阴暗面,包括政府的。南方报系就不用说了,广州日报有时也很给力,从孙志刚到此次动车事件,全国有几家报纸能有如此表现?不是广东乱,实在是其他地方在粉饰太平啊!<br />
<img src="http://ww4.sinaimg.cn/large/6309fc78gw1djm9pnrxjjj.jpg" alt="6309fc78gw1djm9pnrxjjj 被電子報-那些不會再出版的內容" title="被電子報-那些不會再出版的內容"></p><p>P.S. 這篇blog post的資料,絕大部份都是從微博找來的!<br />
內地的微博,儘管有諸多限制,但卻不代表它沒有用。<br />
正如<a href="http://weibo.com/1645101450/xh1PUghRA">@金柏诚 在7月28日於微博所言</a> :</p><blockquote><p>纽约时报今天刊登文章,全面回顾了微博在动车事故发生四分钟后至今所起的巨大作用,并把它称之为微革命。文章指出,微博上信息传播的快速便捷,使言论审查十分困难。所有参与过转发和评论的朋友,我们都是这场微革命中的一员。</p></blockquote><p><img src="http://ww1.sinaimg.cn/bmiddle/620e418atw1djmu5la89wj.jpg" alt="620e418atw1djmu5la89wj 被電子報-那些不會再出版的內容" title="被電子報-那些不會再出版的內容"><br />
New York Times: <a href="http://www.nytimes.com/2011/07/29/world/asia/29china.html?_r=1&scp=2&sq=china%20censorship&st=cse">In Baring Facts of Train Crash, Blogs Erode China Censorship</a></p><p>今晚的事,就是一個好例證。</p><h3>Recent Comments</h3><p>Tags: <a title="723" rel="tag" href="http://sidekick.myblog.hk/archives/tag/723">723</a>, <a title="動車" rel="tag" href="http://sidekick.myblog.hk/archives/tag/%E5%8B%95%E8%BB%8A">動車</a>, <a title="南方都市報" rel="tag" href="http://sidekick.myblog.hk/archives/tag/%E5%8D%97%E6%96%B9%E9%83%BD%E5%B8%82%E5%A0%B1">南方都市報</a>, <a title="溫州" rel="tag" href="http://sidekick.myblog.hk/archives/tag/%E6%BA%AB%E5%B7%9E">溫州</a>, <a title="那些不會再出版的內容" rel="tag" href="http://sidekick.myblog.hk/archives/tag/%E9%82%A3%E4%BA%9B%E4%B8%8D%E6%9C%83%E5%86%8D%E5%87%BA%E7%89%88%E7%9A%84%E5%85%A7%E5%AE%B9">那些不會再出版的內容</a></p><p><img src="http://feeds.feedburner.com/~r/JustASidekick/~4/W47FGTm1NVg" alt=" 被電子報-那些不會再出版的內容" width="1" height="1" title="被電子報-那些不會再出版的內容"></p><p><small>本文由自动聚合程序取自网络,内容和观点不代表数字时代立场</small></p><div>定期获得翻墙信息?<a href="http://www.feedblitz.com/f/?Sub=750556">请电邮订阅数字时代</a> </div><hr><p><small>© admin for <a href="http://chinadigitaltimes.net/chinese">中国数字时代</a>, 2011. | <a href="http://chinadigitaltimes.net/chinese/2011/07/%e8%a2%ab%e9%9b%bb%e5%ad%90%e5%a0%b1%ef%bc%8d%e9%82%a3%e4%ba%9b%e4%b8%8d%e6%9c%83%e5%86%8d%e5%87%ba%e7%89%88%e7%9a%84%e5%85%a7%e5%ae%b9/">Permalink</a> | <a href="http://chinadigitaltimes.net/chinese/2011/07/%e8%a2%ab%e9%9b%bb%e5%ad%90%e5%a0%b1%ef%bc%8d%e9%82%a3%e4%ba%9b%e4%b8%8d%e6%9c%83%e5%86%8d%e5%87%ba%e7%89%88%e7%9a%84%e5%85%a7%e5%ae%b9/#comments">One comment</a> | Add to <a href="http://del.icio.us/post?url=http://chinadigitaltimes.net/chinese/2011/07/%e8%a2%ab%e9%9b%bb%e5%ad%90%e5%a0%b1%ef%bc%8d%e9%82%a3%e4%ba%9b%e4%b8%8d%e6%9c%83%e5%86%8d%e5%87%ba%e7%89%88%e7%9a%84%e5%85%a7%e5%ae%b9/&title=%E8%A2%AB%E9%9B%BB%E5%AD%90%E5%A0%B1%EF%BC%8D%E9%82%A3%E4%BA%9B%E4%B8%8D%E6%9C%83%E5%86%8D%E5%87%BA%E7%89%88%E7%9A%84%E5%85%A7%E5%AE%B9"><a href="http://del.icio.us">del.icio.us</a></a> <br />
Post tags: <a href="http://chinadigitaltimes.net/chinese/tag/723/" rel="tag">723</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e5%8b%95%e8%bb%8a/" rel="tag">動車</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e5%8d%97%e6%96%b9%e9%83%bd%e5%b8%82%e5%a0%b1/" rel="tag">南方都市報</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e6%8e%a8%e8%8d%90%e7%bd%91%e6%96%87/" rel="tag">推荐网文</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e6%9c%ac%e6%97%a5%e6%8e%a8%e8%8d%90/" rel="tag">本日推荐</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e6%ba%ab%e5%b7%9e/" rel="tag">溫州</a>, <a href="http://chinadigitaltimes.net/chinese/tag/%e7%83%ad%e9%97%a8%e7%bd%91%e6%96%87/" rel="tag">热门网文</a><br />
获取最新TOR网桥,请电邮 <a href="mailto:fanqiangyakexi1@gmail.com">fanqiangyakexi1@gmail.com</a> 点击<a href="http://dld.bz/cnm342">这里</a>下载翻墙软件。<br />
穿墙阅读数字时代? 请发电邮(最好用Gmail)到: <a href="mailto:chinadigitaltimes+subscribe@googlegroups.com"><a href="mailto:chinadigitaltimes+subscribe@googlegroups.com">chinadigitaltimes+subscribe@googlegroups.com</a></a><br />
</small></p><div><a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?d=yIl2AUoC8zA" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:-BTjWOF_DHI"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?i=dBZe2D9AAF8:nkdjflrEquI:-BTjWOF_DHI" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?i=dBZe2D9AAF8:nkdjflrEquI:F7zBnMyn0Lo" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?i=dBZe2D9AAF8:nkdjflrEquI:V_sGLiPBpWU" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?d=qj6IDK7rITs" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?d=l6gmwiTKsz0" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?i=dBZe2D9AAF8:nkdjflrEquI:gIN9vFwOqvQ" border="0"></a> <a href="http://feeds.feedburner.com/~ff/chinagfwblog?a=dBZe2D9AAF8:nkdjflrEquI:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/chinagfwblog?d=TzevzKxY174" border="0"></a> </div><img src="http://feeds.feedburner.com/~r/chinagfwblog/~4/dBZe2D9AAF8" height="1" width="1"></div><br />
<br />
<div style="font-size:14pt;text-align:left"><a href="http://feedproxy.google.com/~r/chinagfwblog/~3/dBZe2D9AAF8/"><a href="http://feedproxy.google.com/~r/chinagfwblog/~3/dBZe2D9AAF8/">http://feedproxy.google.com/~r/chinagfwblog/~3/dBZe2D9AAF8/</a></a></div><br />
<br />
<br />
<div style="color:rgb(60%,60%,60%)">Sent with <a href="http://itunes.apple.com/cn/app/mobilerss-hd-free-google-rss/id393767734?mt=8" style="text-decoration:underline;color:rgb(60%,60%,60%)">MobileRSS HD FREE</a></div></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-6902355741988981042011-08-03T09:40:00.000-04:002011-08-22T09:11:52.705-04:00python2.5安装与app engine在fedora 15下的配置<style type="text/css">
<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } -->
</style>python2.5安装<br />
这个比较麻烦,需要首先安装openssl、sqlite3,再相关编译才行。<br />
先安装编译环境<br />
<br />
sudo yum install gcc gcc-c++ autoconf automake<br />
<br />
(1) 安装sqlite3<br />
不知道为什么即使系统上已经安装了sqlite3,python编译安装时还是会出问题,所以先自己编译安装一个吧。<br />
下载 sqlite <br />
安装sqlite, 如果要安装到用户指定目录,可以: $./configure --prefix=/your/path/<br />
(2) 重新安装python<br />
2.1 先修改python setup.py 文件<br />
在 sqlite_inc_paths 中添加sqlite的include 路径<br />
如:<br />
sqlite_inc_paths = [ '/usr/include',<br />
'/usr/include/sqlite',<br />
'/usr/include/sqlite3',<br />
'/usr/local/include',<br />
'/usr/local/include/sqlite',<br />
'/usr/local/include/sqlite3',<br />
<span style="color: red;"> '~/share/software/python/sqlite-3.6.20/include',</span><br style="color: red;" /><span style="color: red;"> '~/share/software/python/sqlite-3.6.20/include/sqlite3',</span><br />
]<br />
根据实际情况修改<br />
<div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><br />
安装openssl,步骤:<br />
<br />
[root@CentOS ~]# yum install openssl<br />
[root@CentOS ~]# yum install openssl-devel<br />
[root@CentOS ~]# yum install mod_ssl<br />
<br />
然后修改 Python 的 Setup.dist 文件:<br />
<br />
[root@CentOS ~]# cd /tmp/Python-2.6.5/<br />
[root@CentOS Python-2.6.5]# vi Modules/Setup.dist<br />
<br />
去掉相关部分的注释符号:<br />
<a href="http://4.bp.blogspot.com/-dDvv7jPcKAs/TlJVHCkmXfI/AAAAAAAACnA/2I_LG8FHtN4/s1600/8nbst2m21.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="57" src="http://4.bp.blogspot.com/-dDvv7jPcKAs/TlJVHCkmXfI/AAAAAAAACnA/2I_LG8FHtN4/s320/8nbst2m21.png" width="320" /></a><br />
<br />
保存。最后,重新编译安装 Python,并且包含 SSL 模块:<br />
<br />
[root@CentOS Python-2.6.5]# ./configure –enable-ssl<br />
[root@CentOS Python-2.6.5]# make<br />
[root@CentOS Python-2.6.5]# make install <br />
<br />
安装python2.5,下载src并解压,路径不要太深或带有中文,否则用configure配置时会出现种种奇怪的问题。<br />
<br />
--prefix是指定安装在/opt文件夹下,也可以用它的的默认安装位置。<br />
sh ./configure --prefix=/opt/python2.5<br />
make<br />
<br />
用install选项会替换掉系统默认的python版本,可能会造成种种问题,所以用altinstall,只安装,但不做替换。详细的安装说明在src的README里都可以找到<br />
sudo make altinstall<br />
<br />
修改home目录下的<br />
.bashrc<br />
$PATH=$PATH:/opt/python2.5/bin<br />
<br />
修改app engine sdk包里的dev_appserver.py<br />
<br />
将第一行改为#!/opt/python2.5/bin/python2.5 Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-820409188074591112011-07-27T11:24:00.001-04:002011-07-27T11:24:51.121-04:00实习遇到的高人出租车司机<div><p style="width=600px"> 【背景】:<br> 我从实习地点1江苏电视台广电大楼下班,<br> 时间是下午三点半,<br> 四点要到实习地点2南京日报社交稿子,<br> 于是打车。<br> 我: 师傅到南京日报社。<br> 司机:乖乖!记者满!<br> 我:实习记者,小朋友。<br> 司机:实习记者也是记者!<br> 我前两天买了两盒假药阿能带我报道下子啊!<br> 我:……<br> 司机:到电视台来干什么,送稿子啊?<br> 我:算是吧。<br> 司机:阿是写南京发大水的稿子啊!!叼你妈季建业!!!!<br> 我:不是不是。<br> 司机:记者要有立场!!!!!!!!!!!!!!!!!!!!!!!!!<br> 孟非为什么火!!!!!!东升为什么火!!!!!!!!因为他们帮老百姓说话。<br> 我: 我没有追求哎。<br> 司机:我教你,记者要会炒作!!!<br> 上个礼拜,老子叼你妈在北京华联买了两瓶可乐,叼你妈一样的两瓶一瓶两块二一瓶三块,<br> 遇到这种事情一般人怎么办!<br> 我:算了哎。<br> 司机:是的哎! 退我八毛钱算了哎阿是啊!!!!但是叼你妈老子跟他反应,叼你妈态度非常的恶劣!!叼你妈把老子脾气搞上来老!!!!老子搞死你!!!!!<br> 司机:老子不找媒体!!!叼你妈老子找要有关部门都能整死你们华联!!!<br> 我: 有关部门还管八毛钱的事啊。<br> 司机:叼你妈!!!!这个时候我就聪明了,我先打电话给物价局,跟他讲我在什么叼地方,让他们几点钟之前前来处理,转过来就打电话给12345政府监督热线,向他们举报物价局违规作业,让他们来处理问题老不来,对老百姓不负责任!!!<br> 我:哇!!!<br> 司机:然后你妈物价局立马打电话跟我讲!!!有什么问题立马帮你解决,你先赶快把政府监督热线的人弄走!!!!保证在规定时间之前前来处理!!!<br> 【结局是】:<br> 在物价局协调下,<br> 北京联华超市赔偿了司机师傅,<br> 两箱可乐,外加一千块钱精神损失费。<br> 我:(凝噎)啊。下次超市不让你进门了。<br> 司机:叼你妈他敢!!!!!老子要不是开出租的,还不把这些社会黑暗力量一起搞死!!!!<br> 要会黑吃黑啊!!!!!!<br> 受益匪浅。<br> 最好用南京话朗读。<br> 来自:伞的日记<br> __________________________________________________________________<br> 欢迎订阅关注冷笑话微博FOTO!精美图片每日分享精彩推荐最好玩的冷游戏 <br> <br> 原文地址: <a href="http://lengxiaohua.net/2011/07/23/orz-taxi-driver/" target="_blank"><a href="http://lengxiaohua.net/2011/07/23/orz-taxi-driver/">http://lengxiaohua.net/2011/07/23/orz-taxi-driver/</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-13832421276282370832011-07-26T09:52:00.001-04:002011-07-26T09:52:51.935-04:00你看了这个长文,还敢坐动车吗?<div><p style="width=600px"> Shared by FQX<br> 不知道内容靠谱不?<br> 浅谈动车所存在的问题及解决对策<br> 原作者:忘情<br> 写在前面的话:<br> 早就在酝酿写这一篇,但心里一直很纠结,不知道从何处下笔为好。我一向写不来假大空的官样八股,但要说真话,说实话,有时候非常痛心,痛心。毕竟是同行,相煎何太急?更何况写这种文章极有可能被别有用心的高铁黑们歪曲和利用,加上要赶出一批稿子补贴家用,于是便一直耽误至今。但近日部里征求企业管理论文,所出的五十个参考题目里动车和高铁占了大头。我已和相关部门沟通过,准备管一回闲事,将我的一些想法写出来,自不量力供领导参考,如果能对中国高铁事业有所俾益,那也就对得住铁路每月给我开的那点工资了。既然是企业管理论文,那至少措辞上还是要和谐点的,但中心意思不变。我想先写个不和谐的网络版,再在其基础上集思广益修改成和谐版。反正只需和谐版的论文六月底以前提交,时间很充裕。<br> 07年第六次大提速时,全路大面积开行了动车组,距今已经四年有余了。路外人士也有不少人参观过动车所、动车段、动车检修基地,那些在全路数一数二的、干净整洁的工作场;先进复杂的相关设备,整齐的服装;令人眼花缭乱的锦旗、奖状;加之铁路宣传部门不遗余力地将动车所人员包装成精英,这一切想必给你们留下了极为良好的印象。<br> 但是,在这一切华丽的表象背后是什么?不好意思,是一包糠,一包捂馊了的烂糠。关于动车所存在的问题,我在08年写过一篇《动车所到底好不好?》,已经披露过一些动车所存在的问题。三年时间过去了,这些问题不但没能解决,反而却越来越严重。这也就是为什么我曾在河里说过,担心今年4月份售后服务合同到期后,动车所会没完没了出问题的原因所在。<br> 一、领导对动车所现状的真实评价。<br> 我把动车所的问题说得如此严重,也许有些人会觉得我小题大作,危言耸听。那么好吧,那就来看看领导们对动车所的真实评价吧。需要指出的是,领导们的原话是不可能直接变成文件的,秀才们必定要进行大量的修饰,但即使是透过这些修饰后的八股文,你仍然可以读出领导们的真实意思。<br> 今年2月初,在跨越被拿下的前几天,他在武汉动车基地发了脾气,事后整理传达的讲话内容中有如下文字:<br> "三年的时间能建成如此规模,使高铁列车的运营维护有了基本保障。我们要认真思考,在"机控"的设备设施到位后,不能忽视"人控",要着重考虑"机控"与"人控"的有机结合。"机控"的关键在于管理,必须建立科学的管理体系;"人控"的关键在于人员素质,必须提高管理人员和作业人员的素质,使之适应中国高铁的发展需要。"<br> "我们的动车基地虽然硬件好,厂房及设备设施优,但是我们在现阶段的敬业精神、责任感以及员工的工作理念还有一定差距。武汉动车基地三级修试修取得了成功,但是还处于刚刚起步的阶段。作为运营单位,理应先当好"徒弟",需要向师傅学习。铁路局、动车基地的领导要告诫我们的职工,一定要谦虚谨慎、戒骄戒躁,尤其在现阶段要虚心向"师傅"学习。在检修管理方面,要重视运营商与供应商的合作,主机厂的制造技术是运营技术的源头,可以担当"师傅"的角色,动车基地应当好"徒弟",通过开展技术合作,逐渐丰富检修运营经验。"<br> 这两段话是什么意思?意思就是动车所人员素质不高,娇骄二气,心思没放在钻研技术上,有关部门在管理上太过放纵。动车所人员素质跟不上高铁发展的要求,领导很着急,很生气。<br> 如果觉得跨越这两段话讲得还挺和谐的话,那么在另一份本该是歌功颂德,尽挑好听的说的文件里,文件拟定单位却出人意料地花了相当篇幅,直截了当地指出了动车所存在的问题,现摘录如下:<br> 建立完善动车组安全保障体系<br> (略)<br> 1、着力解决一体化管理不到位的问题。建立视频评价作业指导系统,加快安检系统建设,实现对现场作业即时、全面、透明、规范的一体化控制管理;修订动车所现场作业盯控制度,站段领导和机关科室管理人员排表列序,每夜到动车所轮流值班;切实承担起管理主体责任,坚持每日召开交班会,每月汇总发生的问题,在月度联劳协作会上通报,并上报路局备案,逐步形成结合部作业衔接紧密、互联互控的一体化管理局面。<br> 2、着力解决动车组检修质量不高的问题。结合动车组入库检修作业情况,每周对各项作业标准的落实和重要二级修项目进行一次全程对规检查,每月由主管段长牵头,对所有动车组逐列进行质量鉴定,鉴定结果打分排队,奖优罚劣,每半年对动车所开展一次全面对规对标活动;建立健全周质量分析和月质量分析公示制度,结合部、局要求和厂家提供的资料,不断摸索惯性故障规律,细化作业指导书,提高故障自主处理能力;围绕标准化动车所建设,不断规范动车组一、二级修,落实空心轴探伤、车轮探伤、不落轮镟修、传动系统润滑、零部件更换和入库诊断、出库联检等关键作业工序的记名检修制度,增设动车组质检员,对关键作业项点实行旁站式盯控,真正做到检测零误差、检修零缺陷、出库零故障,确保动车组高质量、高可靠、高稳定。同时,要准确研判动车发展的趋势和要求,提前介入新动车所的建设,符合动车检修的现实需要和长远发展需求。<br> 3、着力解决动车组基础管理不牢的问题。进一步明晰段职能部门和动车所的管理职责和岗位具体标准,形成"责、权、利"一体的管理制度;建立动车所调度一日工作流程、质检一班工作流程以及故障提前预报处置流程、踏面及受电弓检测数据处置流程等,逐步形成基本工作及作业流程统一、规范的检修运用管理局面;细化完善动车组配件计划提报、物资采购、库房管理、质量控制等各项管理制度,确保配件采购供应各项工作既满足现场需要,又全面受控、管理规范。<br> 4、着力解决动车组机械师素质不高的问题。按照每个班组1-2名骨干,全段1-2个领军人物的目标,广泛开展"每日一题,每月一考,每季一比"活动,优中选优,严把入口关;建立"岗位积分、星级评定"等级管理办法,按星级和岗位积分拉开收入水平,提高职工主动学技练功的积极性;结合全路案例,对所有机械师进行一次实作系统培训,同时,安排每名随车机械师参加一定时间的地勤或二级专项修作业,深入学习、掌握动车组各部结构和功能,有效提高随车机械师的应急处理能力。<br> 在一份写得相当和谐的官样文章里突然出现这些尖锐的文字意味着什么?意味着铁路的高层领导们甭管宣传部门在公开场合如何吹嘘和包装,但他们心里对动车所的现状一清二楚,对这种现状极为不满,不仅仅是不满,从以上四点来逐条分析,领导们对动车所目前的基础管理、人员素质,工作质量可以说是全盘否定。<br> 领导们的这种评价与我所掌握的情况完全相符。每次上级领导到动车所现场检查,没有一回是满意的,所长没有一回不被骂得狗血喷头。领导们也是人,到现场检查不是在大会上作报告,那骂起人来可厉害了,什么词都有,和骂街没两样。动车所的领导呢?每回都一付死猪不怕开水烫的态度,因为已经被骂惯了,骂疲了,无所谓了。<br> 当然了,动车所的领导也是人,也有被骂得物极必反的时候。某动车所的所长在某次被部领导破口大骂时突然一反常态,不顾官场规矩,愤然拍案而当众喝斥部领导:"你要是觉得我不行就把我撤了,老子反正早就不想干了,有种你到老子的位置上干干试试看,你还不如老子干得好呢!"。部领导从来没想到比自己级别低了N个档次的居然敢如此当众发飙,顿时很下不来台。虽然事后不出意外地将该人撤职,但这面子可折得不轻。<br> 二、动车所的问题到底严重到了什么地步?<br> 我认为动车所的问题严重到了外人无法想象,内部人士也无法理解的程度。<br> 动车所的人个个是动车机械师,相当于技师。说起工人技师,那应该是好牛逼呀,技术顶呱呱的呀。而动车机械师呢?按宣传部门的吹嘘,动车是火车中的战斗机,动车机械师那就是百里挑一,天上没有,地上无双,精英中的精英呀(虽然精英二字现在已经不是什么好词了,但宣传部门的弱智是众所周知的,这帮党棍吹鼓手们也想不出什么新词来)<br> 可实际情况到底如何呢?<br> 我来说一个例子。有一次部里的领导添乘动车,随口问了动车随车机械师几个简单到不能再简单的问题,比如说如果空气弹簧漏风应该限速多少呀?制动压力应该是多少呀?<br> 估计这领导对动车是完全的外行,而且也就随口一问,没当真打算考考机械师的水平。<br> 这事要是问普通车的列检人员,人家嘴上不说,心里一定鄙夷这个领导不学无术居然还混到了高位。要是遇到个心骄气傲的,还会认为这位领导是在侮辱自己的智商。但让人大跌眼镜的是,我们的精英机械师居然吱吱唔唔了半天,最后满嘴胡抡答得离题万里,错得太离谱。离谱到其实并不懂具体业务的领导都明白了眼前站的这位精英机械师并不比坐车的普通旅客懂得更多。<br> 为什么这么说呢?因为问搞车辆运用的人员这种问题,就好比你问一个电工,安全电压是多少伏?你们家里的民用电是交流的还是直流的?还有比这个更简单的问题吗?如果这个电工居然还能答错,你会认为他有资格做电工吗?如果这位电工不但在做电工,而且还是位电工技师,你会觉得有天理吗?<br> 如果你觉得这仅仅是特例,是个案,不能以偏概全,一棍子打翻一船人,那好,那你们就来看看以下几个例子。<br> 运用部门为了鼓励检修人员提高检修质量,确保列车上路安全的积极性,每月,每季都会对各车间报上来的发现并及时处理的重点故障进行奖励。<br> 今年一季度,某个动车所提报上级的"有针对性地解决动车突出问题"的重点故障清单里,只有区区十一条故障,而除了一条发现轮对擦伤过限尚属合理外,其他的故障让同行们看来简直要笑掉大牙。我只举三个路外人士能看得懂的"突出问题"吧。<br> 1、司机室的门锁坏,更换门锁。<br> 2、机头上的刮雨器坏,整体更换。<br> 3、洗脸间干手器坏,整体更换。<br> 我的老天爷呀,这就是他们所发现的"重点故障",这就是他们解决的"突出问题"呀?根本就没有半点技术含量,根本就不需要任何技术,你就是换个路外人士,人家也会修,不就是整体更换吗?换这种东西有技术难度吗?如果这也算,那么普通列车处理过的任何故障,其技术含量都不比这个更低。要按照动车所的这个标准,那么普通列车的<br> 维修人员拿奖励要拿到手发软了。你好歹也整几个稍稍需要点技术含量的故障呀,非常抱歉,没有,不是谦虚,而是的的确确搜肠刮肚也找不出更有技术含量的东西来了。因为平常他们根本没有做事。<br> 那么,动车所的人不做事,动车是如何保证运行安全的呢?很简单,技术难度高的,让厂家售后服务人员来做;技术含量低但比较累的,比如说什么清洗空调过滤网呀,修理动车座椅呀,修个门锁呀,换个车窗呀,保洁呀,都承包给外单位做了。那么他们能做些什么?也就能做以上所举的那些换把门锁呀,换个刮雨器呀之类的活,这样的活儿在他们那里也就算是技术活了。<br> 但是,厂家的售后服务是有年限的,都让厂家做,自己又不跟着学,合同到期了,厂家撤走了怎么办?我问过一些动车机械师这个问题,大家都说那关我们屁事?那是该领导考虑的问题,咱还是继续混呗。<br> 混这个字不好听呀,但人家就是这么做的。混到了什么地步?上上下下混到了连表面功夫都不做的地步。<br> 有一回部安监司领导添乘动车检查,发现随车机械师连最起码的台帐都缺失得太多。至于领导下来检查动车所的基础管理,那简直要气得吐血。有一回电视电话会议,大领导当着那么多人的面,直接骂动车所所长的娘了:你小子能耐呀,平常基础工作就是个零蛋,领导要检查了你才编,编还编出水平了,你居然能编出11月31日的台帐,你真不一般的能耐呀。领导要你手下的专职拿出相关记录台帐,你没有就直说,可你的人倒好,直接拍拍屁股跑掉,再也联系不上了,就这么把大领导晾在那里不管了,你TMD坑爹呀!<br> 混你也得混得过去呀。你没有起码的技术作基础,正常的动车运用你都玩不下来。<br> 前段时间动车在中途甩车,将几百名旅客闷得够呛,许多人中暑被抬到站台上的事大家都知道吧?在第一时间就成了网络头版,当天下午中央电视台新闻频道也播出了画面,影响极其恶劣。<br> 我告诉你们,当天晚上,这甩下的动车又往回开了,各系统都工作正常,啥事也没有。<br> 问题出在哪儿?问题就出在随车机械师狗屁不懂,本来完全可以正常处理的事让他越整越糟,最后事态不可收拾。事后,上级命令该所全体人员紧急补课,进行应急处理培训。<br> 但是事情闹得这么大,他们必须到部里将事情交待清楚,必须要给社会一个交代。可你们知道他们是如何编瞎话推卸责任的吗?他们说是因为受电弓的产品质量不行,与电网虚接,导致电力引不下来。听到这种说法,我的大牙都快笑掉了。回家告诉小静,对铁路完全外行的小静立即跳了起来:这不可能,如果没有电,或者说电流太小带不动空调,那动车怎么还能继续跑上几百公里?牵引功率肯定要大大超过空调功率的。我在事后某一天遇到动车所技术人员,当面损他们:唉呀呀,我以前一直以为每列动车是有两付受电弓的,看了你们写的事故概况我才知道我错了,原来只有一付呀,这付坏了就没有备份的了,看来我要多学习你们的文件,不要轻信自己的眼晴。我这话一说,他们个个都羞愧得无地自容,这说明什么问题?这说明如果不学无术没有技术,那就会连编慌话都编不圆,别说蒙内行了,连小静这样的外行也根本蒙不住。说出来真是丢人呀。<br> 其实在这次因空调故障而甩车的事故之前仅仅十二天前,动车的空调还出过事:因为在返程时几个车厢温度太高,旅客闹事,打电话到路局投诉,幸亏离到终点站仅一、二小时的路程,好歹在车厢变成蒸笼前到了站,算是没把事搞到媒体上去,没造成影响。我们的随车机械师遇到这种事只会两眼发直,不知道根据各车厢情况,将故障车厢的旅客疏散到正常车厢去,然后锁闭故障车厢两端的通过门,以免事态扩大。他只知道打电话回来汇报,请求上级支援。车到站后,委外单位的应急人员上车扫了一眼,就判断出空调本身无毛病,只是回风口的过滤网脏堵,将其拆下就在车站股道里找个水龙头清洗一下,装回去就OK了,前后仅花了十分钟就搞定了。这趟动车套跑,到站半小时后就又出发了,空调一路正常,效果良好。事后定事故责任,把责任全赖给了委外单位,说是他们偷懒没洗过滤网,过滤网脏堵导致空调致冷效果差,为此罚了委外单位一万块钱。可问题是,虽然洗过滤网的活儿你们外包了,但是动车所应该有监控的职责呀。动车各种检修完毕,在出库前动车所是要派人验收的。过滤网有没有洗,肉眼一看一目了然,并不需要任何技术。这说明上级规定的出库验收制度在动车所形同虚设,管理上说是千创百孔漏洞百出那还算是客气。不客气地说,动车所的管理只停留在纸面上,报告里,行进事迹材料里,在日常工作中根本就是放羊状态,毫无管理可言。<br> 三、动车所的娇骄二气<br> 按说既然动车所各方面都做得这么烂,领导们回回检查不满意,那日子应该很难过才对呀。按说既然动车所的精英们成天闹低级笑话,让同行们笑掉大牙,那他们如果稍有点廉耻的话,都应该夹着尾巴灰溜溜地低调做人吧?可事实情况完全相反,动车所在这种情况下依然嚣张跋扈得很,整个动车所,从所长到基层的工人,身上的娇骄二气气场极其强大。<br> 先说这个娇气。<br> 我前不久写过一篇《"珍爱生命,远离高铁"到底是什么意思?》,在文章的后半段,我已经承认了动车所人员工作辛苦,但这种辛苦仅仅是长年通宵晚班,给生理机能带来了危害,以及日夜颠倒照顾不了家庭生活而已,实际上他们无论是工作量还是工作质量,都烂到了不能再烂的地步。但是他们却将这一点无限夸张了,而对其他的闭口不谈。<br> 只要逮到机会就给领导们诉苦,一来是为了给自己再多争点待遇,二来也是为了一推二赖。<br> 举个例子吧。只要是空调,就有过滤网。这过滤网脏堵了,致冷效果自然不好。因为许多动车在既有线上客货混跑,因为许多普通车还是向路基上直排粪便,所以在国外只需要一周洗一次过滤网,到中国最少得两天清洗一次,遇上特殊情况的时候,每天都得清洗。<br> 清洗过滤网是一个没有任何技术含量的活儿。但领导们下来调研情况的时候,动车机械师们嚷嚷得震天响:领导呀,这不是人干的活呀,闷在里面拆洗过滤网,夏天环境温度太高了,许多人都为了洗过滤网而中暑晕倒了呀。这车子的空调进风口设计时没考虑到中国既有线的情况呀,过滤网上沾满了各种从路基上吸上来的污物,连粪便都沾在上面,洗的时候那个味道极其难闻呀,好恶心好恶心呀,请领导们多关心一下职工的身体健康呀,给我们创造一个良好的劳保条件呀。。。。。。<br> 结果天天嚷嚷,月月嚷嚷,还真把领导们给说动了。于是便把清洗过滤网的活儿给委外了。令人奇怪的是,还是那个车,还是那个活儿,还是那个劳动环境,自打委外以后,从来没有发现清洗过滤网的劳务工们中暑晕倒过。这些收入只有动车机械师们四分之一至五分之一的劳务工们也从来没有抱怨过工作环境恶劣。<br> 事实上,按这个逻辑,搞车辆运用的又有哪个工作,又有哪位职工工作环境不恶劣呢?<br> 要说过滤网上可能沾有粪便所以工作条件恶劣,那说这话人应该看看普通车的下部,转向架上,两车端部的风管连接处,电力连接线上,尤其是靠近厕所的那个位置,上面沾的粪便绝对比过滤网上的多,积存得绝对比过滤网上厚。而普通车的检车人员、车电人员天天与这些打交道都没人把这个当回事,该干什么干什么。怎么?就动车所的人骄贵?就这点事还一惊一乍喊得震天响,说句粗话吧,那叫"细伢子没见过大人的卵"。<br> 把洗过滤网这种所谓的"苦脏累"的活儿给成功地赖掉了以后,这帮精英们还不满足,继续逮着机会就向领导抱怨,唉呀呀,活儿太多了,太辛苦了,忙不过来呀,受不了呀。实际上他们干了什么?凭他们那德性又能干什么呢?还别说,动车所是领导们的掌上明珠,他们嚷嚷久了,领导们又被说动了,干脆把修理座椅,修补地板,修水龙头之类的活儿也给外包了。但这帮人仍不满足,仍在那里叫唤,唉呀呀,好辛苦呀,成天通宵晚班呀,忙不过来呀。于是领导们决定继续往动车所里调人。问题是如果参照普通车的标准,你的定员早就超标了,更何况你是在大部分工作量都外包的情况下还远超定员,如果路局当真按劳动生产率核算你的收入的话,那动车所连工资也发不出。但事实上,因为动车所是宝贝,因为动车机械师们是天上没有,地上无双的"精蝇",所以不但能足额发出工资,而且其奖金极高。这笔钱从哪里来的?蛋糕就这么大,你动车所切的份额多了,其他车间自然少了。再说直白点,动车所是在吃其他车间的剥削,一边大口吸着阶级兄弟的血,一边还抱怨吸得太少了,吃不饱。<br> 动车所上上下下的这种做派不禁让我想起了小时候看过的漫画:动物们长跑比赛,发令枪响,大家奋力向前,唯有猪跑了几步就钻进路旁的草丛里呼呼大睡,睡到太阳落山,伸个懒腰起来,远远看看其他动物气喘吁吁地跑回来了,于是猪在泥塘里打了几个滚,然后带着满身泥水假装气喘吁吁地跑向终点,轻而易举地拿到了冠军,还装模作样地鼓励其他落在后面的动物,你们快加油呀。<br> 再说那个骄气吧。<br> 对外宣传上,宣传部门不遗余力地把他们给包装成了精英中的精英。甭管动车所如何的烂,甭管他们的工作如何地糟糕,领导们还是给了他们极高的薪酬待遇,各种荣誉一样没少给他们。在分配各种先进指标时,他们享有绝对的优先权。在只有一个指标时,想都不用想,指标肯定给动车所。指标多时,动车所按人头摊到的指标绝对比其他部门要高一个数量级。至于要整点先进事迹材料嘛,没关系,难不住他们,做事不会做,撒慌撒不圆,但吹牛皮还是胜任有余的。某人有句名言:工作成绩不是做出来的,而是写出来的。<br> 长此以往的虚假拔高宣传,不断地强化这种心理暗示,动车所上上下下都不知道自己几斤几两,认为自己就是精英,拿各种荣誉那是当仁不让,名至实归。所以动车所上上下下,个个都拽得跟二五八万似的。你要是关起门来骄狂,碍不到别人什么事,那也由得你。但问题是动车所的人认为既然上级要求动车无小事,那是中国铁路技术装备的塔尖,那其他车间和部门算什么东西呀?我动车所就是太阳,其他车间和部门就必须无条件地围绕着我转,一切工作为我服务。<br> 于是,每回动车所有设备损坏需要修理时,动车所的机械师们会来通知设备维修人员修理。但现场的情况是,设备维修人员少,又要负责许多车间的设备维修,因此这维修工作只能按先来后到,以及轻重缓急来排序。我们认为这是合理的,但动车所的人可不这么认为。有点屁大的事,都必定会极其骄狂地让设备维修人员立刻、马上搞定,否则动车有什么事你要负全部责任。都是工人,而且是兄弟单位,有话不能好好说吗?干嘛每回都要这么赤裸裸地居高临下的威胁呢?谁又是被吓大的呢?<br> 如果确实是一些极其重要的,关系到行车安全的关键设备,你说你着急上火,口不择言,那还说得过去。但实际上,动车所所配属的设备虽然很多,虽然很贵,虽然很复杂,虽然加起来价值上亿,但却基本上都躺在那里生锈。为什么?因为动车所把关键的技术活儿全推给了厂家售后,自己根本不用那些设备。而厂家售后呢?人家也就是换件修,根本也用不着那些设备。<br> 那么动车所要求维修得最频繁的设备故障是什么呢?说起来估计你们都会笑掉大牙,是日光灯。<br> 咱们的勘察设计院都是一帮没有任何现场工作经验的人,设计时只会考虑尽量增加造价,这样按比例提取的设计费就高,根本不从从现场需求及工艺合理性方面来设计。比如说动车检修棚吧,棚顶横梁上已经密布了400瓦的高压钠灯,照明应该足够用了。可他们偏偏还要在钢轨下面每隔几米就设计一个地灯,总共270个,动车检修线的钢轨是高架的,这些地灯那荧火虫般的光对于下部检修毫无用处,人家检车时照样要用手电筒,如果要更换车下部件,照样要用移动式探照灯。更离谱的是,车棚里的检修平台上,上下三层,密密麻麻地设计了1040个40瓦的日光灯。好家伙,搞这个设计的人是想设计费想疯了。这1040个日光灯不过就是给平台走路照明用的,其实在有那么多大功率顶灯的情况下,这些日光灯毫无必要,即使是想做一个补充,留下原设计的十分之一就足够了。<br> 这1040个日光灯管和270个地灯怎么可能没有几个灯管坏呢?就算你今天全修亮了,明天晚上一推闸,保管还会有灯不亮,这是极正常的事,也是鸡毛蒜皮毫无影响的事。但是不,动车所的人拿着鸡毛当令箭,夹根狗尾巴草楞充大尾巴狼,成天威胁设备维修人员,你得给我修,而且得立刻、马上全部修亮,我才不管你还有什么其他重要设备要修呢,我动车所没有小事,都是天大的事,你如果不立刻修,要是动车组带故障出库,上级追查下来,你得负全部责任。<br> 你们说说看,有这么恐吓兄弟单位的吗?有这么胡搅蛮缠的吗?为动车故障负全部责任?定谁的责任难道是动车所作为当事人自己说了算?<br> 这工作场地的事多少还能算个事,但办公场所的事也充大尾巴狼,那就得激起别人的义愤了。动车所的女厕所有三个照明灯,有一个坏了有什么关系呢?不是还有另外两个吗?可动车所的某领导说出来的话真气人:我告诉你,你要是不立刻修好,要是出了什么事,那就唯你是问。<br> 咦,女厕所里缺了一个灯,就能出什么事呢?难不成少了一个灯,就会有色狼侵犯你?<br> 既是色狼,人家会因为多了一个灯就放过你?本不是事的事都这么整,这叫啥?按本地的粗话来说那就是"大卵吓寡妇",你吓唬得了谁呀?事无巨细都这么整,大家都会拿你们动车所的人当成疯狗和瘟神的。<br> 有其他部门的领导就公开对手下说,你们都给我听着,但凡是和动车所有关的东西,你们都离得远远的,看热闹也别凑近,别给我惹事,这帮废物会拉不出屎赖茅坑的。<br> 这位领导不愧是老江湖呀,说得一点没错,动车所但凡是出了点事,动车所从来不会在自己身上找原因,必定一推二赖,你就是不靠近它们的场地、设备和人员也照样能躺着中枪。<br> 这样的事多了,动车所能不讨人嫌吗?能不成为大家眼里的疯狗和瘟神吗?不过谁都不是天生的受气包,你动车所欺人太甚了,兄弟单位反过来打动车所耳光的事也不少。<br> 最近动车出的事情一件接一件,动车所上上下下被上级骂得狗血喷头,就又开始到处赖责任了。<br> 某日,动车所的人员打电话给兄弟单位,说我们所长命令你把站场的灯全给弄亮了,否则动车要是有故障责任全在你。其实动车的检修全在自己的检修棚里,检修完毕才会拉到站场上等候出库,这时候站场有无照明,有几个灯照明和动车的检修质量半点关系也没有。偏偏管这事的人是个天不怕地不怕的主儿,看到动车所狗急跳墙居然敢打上门来,当即半点客气都没有地顶了回去:回去告诉你们领导,先把情况搞清楚再来发声音。<br> 站场照明早在一年前就因站场施工需要而拆除了,现有照明是在相关单位强烈要求下,路局出面让施工单位搞的过渡措施,我们无权改变路局决定,更无法越过路局直接找施工单位。有什么要求自己找路局提去。<br> 话说得这么清楚,按说动车所的人要是脑筋还正常的话就该不再吱声了。可动车所的领导做得过份,三番五次找上级部门说这个兄弟单位的人好难伺候,他根本指挥不动。部门领导们不明就里,找当事人一问,当事人没好气地写了个书面汇报材料上交给领导们,在详细介绍完站场照明的历史、现状及其来龙去脉后,在材料的最后写上了如下一段话:<br> "站场现为几个车间共用,这几个车间是平行的兄弟单位,互不隶属。如果有车间对站场设施有要求,按正常程序应该向上级职能部门提出,由上级职能部门出面协调。如果觉得手续复杂,为提高工作效率,兄弟单位之间协商也是完全可以的。但需要说明的是,只是平等协商而已,于情于理都不能,而且没有资格居高临下地向平级的兄弟单位下命令。虽然有的车间自以为自己是天之娇子,见官大三级,可以向任何人,任何单位发号施令,任何单位和个人都必须无条件地服从命令,而不管这命令是否正确,是否合乎实际情况,但有关人员顾全大局,已经对相关人员作出了解释。有关车间号称精英,不至于连中国话也听不懂吧?在这种情况下,还说出"我们指挥不动"这种话就令人费解了。首先,凭什么指挥?谁是谁的下属?其次,什么叫指挥不动?这种情况如何动?希望精英们能教教兄弟单位的蠢驴们该怎么做?人们都说有些单位只要一出事,必定着急上火一推二赖,必定拉不出屎怪茅坑,这话以前咱没有切身体会。。。。。。"<br> 各部门的领导,甚至包括大领导看过这份材料后都会心地哈哈大笑,私下里讲的话比这段话还要尖锐,还要难听。<br> 非但如此,A领导看过这份材料后直接破口大骂动车所的乌龟王八蛋,还直接找上了动车所的B领导呛了他个半死。<br> A真有水平,先把姿态放低,说是给B汇报来了(其实两个人平级),讲完来龙去脉,要求B直接打报告给路局领导解决站场照明问题,并说这其实对大家都有好处,但动车所是领导的心肝,你们提什么要求领导们都会照准的,咱就指望着沾贵所的光了。B一听就傻了,半天没吭气,他哪里敢在这个问题上惹上路局领导呀,不但毫无道理,而且那岂不是指责路局领导决策错误?借他们几个胆他们也不敢呀。于是在傻了半天后连忙推托。A不依不饶,说我们打这个报告不合适的,我们哪里知道贵所需要多少灯,站场照明要达到多少烛光才能合贵所要求呀?既然你们认为现场的站场照明满足不了贵所要求,那么你们有什么具体要求,自然是由你们提出。B一听,估计也听说A在使枪夹棒地骂人了,连忙说没关系,此事就算了,他们能克服。<br> "克服"这两个字一出,顿时激怒了A领导,于是直接刺刀见红了:唉,B领导,你们可千万别克服呀,我听到您说这话连冷汗都出来了。这要是下回你们的动车出事了,你们赖上我们,说长期以来都在被迫忍受和克服,因此造成事故,那我可真担待不起呀。。<br> 。。。。<br> 事后,A直接和几个主要领导通了气,你们听着,这乌龟王八蛋说他能克服呀,话先耽在这里,以后有事大家作个见证。<br> 主事的领导也是天天被动车所的二货们烦得要命,一听这话立马表态,行,既然他们自己说能克服,那老子也不管了,真要管了,反惹出一身臊来。。。。。。<br> 四、动车所人员的底细及培训情况<br> 动车所的情况这么烂,那么动车所精英们到底都是打哪儿搜罗来的呢?<br> 告诉大家,从来就没有公开招聘、选拔动车人员,他们都是领导直接指定的。甚至他们原来单位的领导们在接到调令前连一声风声都没听到,接到调令后往往感到意外:啊?<br> 就这种人也能调进动车组呀?这人找了谁的门路,花了多少血本进去的?<br> 动车所的人形形色色,可以大致分为三大类,其人员比例我只能粗略估算个大概。<br> 第一类人,就是来动车所只为卡位上台阶,或者是妄图卡位上台阶的人,他们绝大多数是动车所的现任领导,极个别的也是管理人员。这类人的数量,大约占到10%左右。<br> 都知道动车组是领导们的掌上明珠,事事都要高看一眼,要是能在动车所卡个领导职位,可以经常接触到部、局各路领导,容易混脸熟,容易攀上新的高枝,理论上应该有更多的升官空间和更快的升官速度。所以,领导喜欢把自己想提拔的人塞进动车所卡位,或者作为一种酬佣,而根本不去考虑这人是否适合,是否有足够的能力和魄力来挑起这付重担。事实上,除了极个别的人,动车所的领导们在坐到这个位置之前,相当一部分根本就没当过领导;有的虽然当过,但只是有职无权帮人打下手的副职,缺乏独挡一面的锻炼;有人虽然当过部门正职,但那只是为了提拔而走过场,挂个空衔而已,实际上并没有在部门正职的位置上扎扎实实地干过。<br> 大部分卡位的人只是想借动车所镀镀金,然后拍拍屁股走人,谋个更好的职位,因此心思都用在跑官、攀高枝上了。所以,动车所的管理一团糟也就并不奇怪了。<br> 不过,主观愿望是美好的,现实却是残酷的。这些人的如意算盘打的倒是挺好,但人算不如天算,强中更有强中手,一山更比一山高。他们镀镀金就转身高升的希望一个接一个地破灭了,甚至已经吃到了嘴里,已经咽到了喉龙口的肥肉都让人硬生生地给扒了出来,干着急上火却没半点办法。因为动车所的工作一团糟,领导每回检查都破口大骂,<br> 时间久了,上面的印象坏透了。虽然你上面有人,但最起码的东西你总得说得过去才行吧?于是有人不但升迁美梦成了一枕黄粱,而且因为工作没有起色,捅的蒌子越来越大,到最后连后台也罩不住他了,只能撤职,降级,另行安排工作。<br> 那些企图卡位的,是觉得在原单位受了委屈,遭到了长期压制,于是想乘着动车所的新鲜劲,到这个新单位来开辟新天地的。可惜呀,这想法太过幼稚了。你想想看,要是后台硬,在原单位又怎么会受长期压制呢?所以这种人进了动车所后,依然长期受压制,真正的好事轮不到,背黑锅的事回回都少不了,成天唉声叹气被气得吐血。为了安抚一下,上面假惺惺地给个荣誉,按说吹得好,应该大力提拔才对呀。提拔?妄想,给你个荣誉是为了把你架在火上继续烤,还让你不敢、不能、也发不出牢骚来。至于黑锅嘛,继续背,回回少不了。<br> 第二类人,在进动车所之前是各个口子上的技术尖子,人数也大致占10%。<br> 各人的技术怎么样,大家心里都有数。甭吹,是骡子是马,参加各级快速修比赛见真章。能去的技术都还可以,但要能拿到名次,那才是尖子。这样的原技术尖子动车所有几位。<br> 请注意,我说了一个"原"字。为什么呢?因为术业有专攻,如果他进了动车所还是从事原来的行当,比如说探伤呀,旋轮呀,那他还是响当当的技术尖子,谁都没二话。但这样的情况太少了,大部分技术尖子进了动车所都改了行当。比如说你原来是修柴油发电机组的,技术确实好,但动车是电力驱动的,压根就没有柴油发电机组,你多少年历练下的本事上哪儿施展去?只能是重头再来。<br> 这样的技术尖子因为原来就比较勤奋好学,应该说如果他们当真肯继续钻研,吃透动车维护技术应该用不了多长时间。但是现在四年时间过去了,他们的技术也就比绝大多数人好一点,但还远远谈不上真正的技术尖子。为什么?难道动车技术有这么难吗?这个问题我在下一章节再详细谈。我只说原因,那就是动车所大锅饭严重,赏罚不明,你懂得越多,那你就理所应该多做点,别人不干活光动嘴皮子在领导面前吹牛摆功拿的钱不比你少一分,做的事多,出纰漏的概率就越大。虽说赏罚不明吧,但多少还是要罚点。<br> 长此以往,谁心里会平衡呢?于是他们也越来越不愿钻研技术了。<br> 虽然如此,但我仍然看好这些人,因为他们的技术底子打得扎实,搞车辆运用都至少有十年以上经验积累。车辆本就不是什么高精尖的东西,有许多东西是触类旁通的。底子好,悟性高,如果有朝一日能激发他们的积极性,用不了多久,他们不但会成为动车技术尖子,而且动车未来的技术带头人必定出自他们中间。<br> 第三类人,就是阿猫阿狗阿混们了,共同特点是头脑灵活,善长投机钻营,偷奸耍滑,在原单位就是些嘴皮子货,这类人大约占80%。<br> 这类人中的绝大多数并不来自于运用检修部门,而主要来自于定检、设备、客列检及外单位。比较扎眼的是,里面居然有列车员,这就太扯蛋了。<br> 即使是这些单位的佼佼者,由于工作性质的原因,这种出身的人都不宜直接进动车所。<br> 就拿定检来说吧,他们的工作就是对车辆进行定期检修。定检的分工非常细,每个班组只负责列车的某个子系统,这和运用维修完全是两个概念。搞定检的只知道自己长年手头做的那一块,对于全车缺乏系统了解,你让他对全车检查一遍,他肯定傻眼。更何况有些子系统只是普通车上才有,比如说水暖这一块,主要是对绿皮车的取暖锅炉,煤茶炉和车厢里的暖气片进行检修,但动车上并没有这些东西。你让一个长年修水暖的人直接调进动车所去搞动车的全面维护,他完全摸不到头脑。这样的人进动车所后游手好闲,到处找关系,不到一个月就终于如愿以偿地当上了随车机械师,那么他在车上闹笑话,遇事连起码的头绪都摸不着,领导问最简单的弱智问题都能答错,那就是再正常不过的事了。<br> 搞设备的人其实是属于后勤系统,他们长年修的是地面上那些维修设备,对列车的了解和普通旅客无异。更何况本身也就在设备系统混日子,打晃晃,起码的机械电子方面的手艺都潮得可以,一进动车所就直接顶岗了,那他能做得下来吗?你要惊讶地问他怎么能做得下来呢?人家还挺委屈:我已经算是很不错的了,动车所里好多人还不如我呢,人家压根啥也不做,不也一样拿钱吗?听听,互相比烂。<br> 至于搞客列检的,虽然也算列车运用部门吧,但是他们平常的工作就是解挂风管、挂个风表试风。站停时间那么短,你让他看车?他顶多在股道里走一遍,不低头,不弯腰,不看车,就这么混。反正只要试风没有问题,出了再大的事也没他的责任。就算是试风发现漏泄超标,他也只是通知车辆乘务员就算完事了。这个样子练出技术吗?虽然客列检所在不久的将来将全部撤消,但人员往哪儿安排不好?非得往动车所里塞吗?<br> 至于外单位,尤其是原列车员直接进动车所作技术工种,那就好比文盲张好古连升三级进了翰林院一样,属于黑色笑话了。我只能佩服领导们的胆量了,反正动车是国家财产,不是私人的,崽卖爷田不心痛。(这事我在三年前的旧贴《动车所到底好不好?》里详细说过,这里不再说了)<br> 这帮善长投机钻营的家伙进了动车所,加之管理松懈,那你还能指望他们钻研技术吗?<br> 动车所由以上三类人组成,他们的整体业务水平是低于整个系统平均水平的。就算是动车所里矮子里拔出来的高个,也不怎么样。以前每年搞的运用部门通用工种快速修比赛,动车所选拔出来的高个根本就拿不到名次。说到这里也许你会感到奇怪,你上面说的第二类人不是技术水平不错吗?怎么会拿不到名次?解释一下,这第二类人大部分是特殊工种,参加通用工种比赛是难为人家了,所以只能到第三类人里去挑高个。<br> 这种比赛比了几次,动车所每次都输得很难看,领导们脸上都挂不住了。于是到后来,干脆给动车所人员单独设置比赛科目,让他们自己和自己比。<br> 也许有人说了,虽然动车所人员基础水平差点,但进动车所前不是要培训吗?不是说培训合格才能上岗吗?他们的机械师也还是要考试的,既然考试合格了,那就应该能胜任动车检修工作呀。<br> 铁路上的培训考试是怎么一回事?我四年前写过一篇《铁路职教,怎一个黑字了得?》,里面已经说得很清楚了。职教那帮爷自己压根就不懂动车,所以动车组新晋人员岗前培训,全部交给西南交大委培,新晋人员一律到西南交大脱产培训一个月。直接送到大学里培训,听起来好牛逼吧?可这本身就是个笑话。<br> 大学老师们眼高手低,一肚子理论,却半点实践也没有。你让他们给大学生们上上理论课,或者给铁路宣传部门不学无术的吹鼓手们补点铁路常识,他们是胜任有余的。但如果让他们给运用维修人员上课,他们也只会照着书念,真要让维修人员问他几个实际问题,八成能把他们问傻眼。你要是再狠点,将这样大学教授、讲师们请到现场,问问他们,老师,你上课讲的那个零部件在哪里?麻烦您现场指认给我看看好吗?这时候你就可以看他们出洋相了。<br> 不要不相信,这都是我脱产短训时做过的事。开始问问题的时候,我其实并没想刁难他们,而是确实有长期不得其解,平时和技术尖子讨论时也没能形成统一认识的问题。后来那个现场请教,是我实在瞧着有些目空一切的大学老师不顺眼,诚心要灭他的威风,但当时我请他指认的零部件并不是偏门,因为我本打算步步连环,真正的杀招在后面,没想到对方立马现了原形。从此,老师们反过来要请我吃饭,一个个客气得很,谦虚得很,声称要多多向我请教,客气了半天,最后才绕到正题:您老人家能不能以后别再当众提问了?给留点面子吧,甭管啥事尽管开口,私下里大家好勾通好商量。<br> 不光是我,从现场出来脱产培训的人都会有类似的感觉。既然大学老师们只会照本宣科,白纸黑字的教材谁都能看懂,那又何必听课呢?所以脱产送培一个月就变成了带工资的旅游渡假休闲月,打麻将,打电玩,扑姑娘,啥刺激就玩啥,就是没人正经钻研业务。反正听不听课都一样,结业考试全是走场,没有不让你过的,那样对大学有啥好处呀?<br> 这帮人怀里揣着培训合格证回来,职教部门就坡下驴,你看,大学委培都合格了,所以可以立即到动车所上班顶岗了。下回要是这帮人惹出了啥事,职教部门把责任推得一干二净,这可是专业大学培训合格的,所以我不能为培训质量负责。<br> 每回动车出了事,虽然领导们对外帮他们捂着,但私下里还是很震怒的。痛骂之后,责成职教系统负责搞应急处理培训。这里有两个问题,首先这职教系统本身对动车就是外行,拿什么去教人家?最后就只能继续照本宣科,学不到实际东西的。其次,故障千变万化,应急处理要根据当时的实际情况来具体决定,不可能有固定模式。别人的成功经验如果脱离了当时的特定外界条件而生搬硬套照猫画虎,极有可能桔生淮北而为枳了。<br> 兵书都是公开出版的,任何人只要把它们都背熟了就能摇身一变成为军事家了?同一个军校出来的,怎么战场表现得那么悬殊呢?因为这些东西关键在于运用之妙,存乎一心。<br> 所以应急处理能力只能建立在平时大量技术积累的基础上,在关键时候灵活地根据实际情况处置,该大胆的时候果断大胆,就算是违章,只要是在合理范围内,该违的还得违。但这种大胆冒险不是盲目的乱来,而是要掌握分寸的。这种能力绝不可能通过几天轰轰烈烈打老虎般的群众运动获得。所以领导的这种做法属于病急乱投医了,只能作为给上级的一个交待,实际效果几近于零。<br> 还是举两个例子吧。<br> 例一:某趟列车在局管内突然发现大量漏风超标,列检下车查看发现无法修复,立即买了两条烟送到机头上,让老大可着劲地打风,就这么一路安全地开了回来,没惊动上级,把一件事故成功地消灭在萌芽状态。但是这个案例是无法写进教材的,因为明显违章。何况人家这么做是有条件,有把握的,首先就是他找到了故障点,正确判断了虽然大量漏风而且无法作关门车处理,但是无损于列车的刹车功能,这是一个重要前提。其次,这车是在局管内,司机老大是熟人,有事好通融,这事要发生在外局地面,司机打死也不会这么干的。第三,这位司机老大经验丰富,详细问明了故障部位和原因,他也有把握,才会卖这个人情。以上三点缺一不可,所以要是哪位赵括想照猫画虎,恐怕反类其犬。<br> 例二:某趟车傍晚开车前突然发现发电车的水箱破损,水全部漏光,按规章无法启机向车厢供电。按常规只能甩车处理,责任晚点事故一件,单位和个人要倒大楣的。要是不供电强行开车,旅客要造反,沿途车站的客运值班员们一见晚上这列车黑漆漆的没电,也肯定要拦停,这事肯定兜不住。可某人艺高人胆大,强行启机平安回到终点,旅客没闹事,列车没晚点,上峰也不知道。要是哪个二百五只知其一,不知其二,下回也想照此办理,估计柴油机恐怕得报废,事情会闹得更大,还不如直接甩车呢。为什么?因为那人这么做是有许多限制条件的,不仅仅是强行启机这么简单。首先,他知道这车夕发朝至,沿途晚上都比较凉快,全列车不开空调也能过得去。其次,他事先跟车长沟通,让列车员安抚旅客,这车供电系统有点问题,但不影响安全,为了不耽误大家旅行,决定不甩车,边运行边抢修,请大家稍安勿燥。第三,他让列车员将车厢里那可以打开的窗户全打开通风,这样车开起来,车厢里并不热。第四,他让列车员将用电负荷减到最低限度,照明只开半灯,只开电茶炉,空调一律不开。第五,他启动了两台柴油发电机组,分两路向列车供电,进一步降低了单机负荷。第六,他将发电车机房里那几扇大玻璃全给卸了,列车一开,气流汹涌而入,靠气流来冷却机组,就这样硬生生地把水冷柴油机临时变成了风冷。以上六条,缺一不可,但这些能写进教材里吗?你就算知道了,下回如果这些条件不能同时具备,你能东施效颦吗?<br> 五、动车所的问题到底在哪里?<br> 前面刚发了几章,就有人一惊一乍:唉呀呀,原来内部烂成这样呀,闹了半天你们根本就没吃透技术,那我可不敢坐高铁了,怪不得高阻要降速呀,实在是英明呀。<br> 这一惊一乍的人里面,有些是高铁黑,鸡蛋里都能挑出骨头来,正愁找不到炮弹呢,你揭了这么多活生生的内幕,正中其下怀。对这号屁股决定脑袋,先有定论再挖空心思寻找对已有利证据,而对其不利的一概装看不见的人,我不想多费口舌。<br> 还有一些人只是对铁路并不了解,受到近些年来,尤其是今年2月12日以后,各路媒体,各类砖家叫兽争先恐地掀起狂黑高铁的舆论影响,对高铁现状,希望有关部门能及时解决前进中存在的问题而已。<br> 对这一部分网友,我愿意多说几句。<br> 遇到一点问题就开倒车是绝对不可取的。看看我前面所说的各方面的问题,降速后就能得到缓解甚至解决吗?空调出故障,这和速度毫无关系。你把速度降下来,难道那帮二百五的技术水平就能得到提升了吗?那种希望速度低一点,让故障尽量少发生一点,尽量少给领导惹点麻烦的想法是鸵鸟遇到危险把脑袋钻进沙堆的做法,自以为很安全,可实际上身子和屁股全露在外面呢,只能是自欺欺人而已。<br> 故障出得少,你接触故障的机会就少,检修经验积累得就慢,反而不利于维修人员技术水平的提高。更何况动车各个子系统中,故障发生率直接和速度有关的非常少,绝大多数是和运行里程,工作时间有直接关系。也就是说,你速度降下来,仅有个别子系统的故障率可能会稍稍低一点。比如说车轮,速度低了,磨耗得就慢一点,长期运行中因车轮材质不良导致踏面剥离可能会来得慢一点。但据我们这几十年来的维修数据积累,这种直接和速度有关的故障发生率和速度之间并不是一个线性关系,而是一个曲线。达到了一定速度,速度再提高,故障发生率曲线反而会趋向平缓。也就是说,降低速度就一定能如何如何那是外行人讲外行话。除非你把速度降到零,这车不开了,就静止摆在那里晒太阳,那才会绝对安全。<br> 那么,动车组的维护是否真的好难,铁路职工根本就掌握不了呢?<br> 难者,不会也;会者,不难也。厂家售后人员也是中国人,人家能掌握,凭什么铁路职工就掌握不了呢?已经大规模投入使用四年多了,四年,一个本科都读完了,如果你真的实打实地跟着厂家售后虚心学习,多动手,多实践,遇事多问几个为什么,举一能返三,哪里需要四年才出师呢?<br> 从本质上说,在铁轨上跑的机车车辆都是傻大笨粗的东西。这个没办法和运载火箭,神舟飞船,卫星相提并论,这些单件生产的东西都非常复杂娇贵,得小心呵护,任何一点小疏失都能导致严重后果。而机车车辆,必须批量生产,必须适应各种恶劣的气象条件,必须出勤率高,所以必须得皮实,经摔经碰。因此大家不要被宣传给迷惑了,真觉得这东西有如何如何高不可攀。<br> 大家可能都有这样的体会,小时候遇到某件事情觉得怎么不得了呀,一筹莫展呀,这个坎迈不过去呀,但过几年回头看看,你会暗笑自己当年的幼稚,这点事算什么呀?因为你长大了,各方面水平提高了,以前那点事现在在你眼里算不得什么了。<br> 铁路的技术装备也是如此,从绿皮车到红皮车、兰皮车、白皮车,它们当年刚出现的时候,人们又何尝不是觉得技术跨越太大,如何高不可攀吗?可事实上,用不了一两年,在我们眼里,它们就从高端技术迅速沦为大路货,我们吃透它们技术的速度是何其快?<br> 当年红皮车刚出的时候,发电车,集中供电,整列空调,让习惯了绿皮车,轴端电机发电,电风扇降温的运用维修人员感觉象是刘姥姥进了大观园。为了保障红皮车能正常运行,车上配了十几个车辆乘务员,足够组织足球队了。用不了多久,四个车辆乘务员就足以维持它正常运行了。<br> 兰皮车刚出的时候,那塞拉门让人眼花僚乱;空气弹簧、盘形制动,单元制动缸让修惯了钢簧、闸瓦的人们何尝不觉得复杂?白皮车刚出来的时候,由人们所熟悉的发电车直接供交流电改为机头直供DC600伏的直流电,然后在各车厢逆变为交流电,四合一控制柜,又何尝不让车电维修感觉头痛过?可用不了半年,就已经摸得烂熟,变成小菜一碟了。<br> 98年国产第一代动车组出来的时候,全车电器由中央电脑集中控制,全车只配一名车辆乘务员,必须要全面掌握检车、车电、空调、发电车这四个工种的业务,在当年年代其技术地位就相当于现在CRH380。为此,当年局里还专门下文,规定必须由助理工程师以上职称的人才能担当其乘务员。可不到一年,中专生、退伍兵也照样能独立担当乘务,能独立解决问题了。不到三年,这种动车组的技术地位直线下降,沦为专门照顾快退休人员的养老车,那些老人家不也照样拿下来了吗?<br> 具体说到现在的CRH动车组,我承认它与之前的既有车相比,技术进步的幅度大。但是,这种技术跨度带来的困难绝大部分体现在生产厂家的设计、制造、总装方面。比如因为速度快,其轴承的材质、制造工艺,装配精度要求高;因为速度快,车轮作为耐用品,对其产品质量要求高。但是它给运用维修带来的困难,远远低于厂家在设计、制造时的困难。宣传部门夸耀其难度是正常的,难度不大,那就意味着进步不大,自然要死吹。厂家宣传难度,一方面对它来说的确是严峻考验,的确是要下不少功夫的,另一方面也是自卖自夸,求得卖个好价钱。动车所的人抱怨难度大,一方面是底子差,又不肯踏踏实实下功夫学,另一方面是为了对外吹牛,保持动车高不可攀的神秘性,进而自高身价,向领导要求增加福利待遇而已。<br> 我们可以把动车分成许多子系统,看看运用维修的技术跨越在哪里?<br> 首先,保证动车安全的是转向架和制动系统,这些东西和现有车相比,并没有质的飞跃,完全可以触类旁通。有网友说运用维修部门不是设计部门,不明白其设计参数,所以维修时拿不下来。说这种话的朋友根本不了解运用维修的性质。我需要知道你转向架设计的力学模型干什么?我只要按程序检查,看看开口销是否断裂,各销孔是否磨耗过限,各部件相对位置是否正常,各磨耗面是否超过限度就行了,超限就更换部件或者旋修就行了。轴承制造难,要求高,但这与我何干?我只要看看轴报温度是否正常就行了,异常了就直接扣车换轮,作为运用检修部门,我是不可能修轴承的,专业制造厂家也修不了,也只能直接更换。<br> 其次,保障旅客舒适度的子系统,比如说空调呀,饮水机呀,门窗呀,马桶呀,座椅呀,这些子系统普通车上也有。虽说动车上的高级些,但原理是一致的,合格的维修人员都能无师自通。虽然海尔空调和格力空调在具体构造上稍有差异,你格力空调的售后服务人员就修不了海尔空调了吗?<br> 对于运用维修人员来说,动车组的难点在于分散动力包和车载电脑集中控制系统。不过分散动力包虽然复杂,但其可靠性要求很高,如果制造合格,在返厂前的故障率应该很低。运用时发现故障,只要更换部件即可。不仅仅是动车,所有的列车运用维修都是如此。<br> 车载电脑集控系统的确是有点难度,由于运行环境远比不过试验室,各项参数又设置复杂,即使是工控机的可靠度高,长期运行出点毛病也正常。有许多人对家用电脑的掌握也仅停留在玩游戏的水平,觉得这东西好难也就不奇怪了。可再容易的东西,你光看不上手,甚至连看也不看,光会嚷嚷好难,那就自然难上加难了。<br> 以上说了一大通,相信不先入为主的网友们都能看出动车组的问题到底在哪里了。不错,在于管理,问题出在下面,根子却在上面。<br> 上级领导虽说极为看重动车,提出动车无小事的理念,但一到具体操作,就全然不是那么回事了。人员选拔变成了交易和酬佣,人员培训变成了儿戏,日常管理扯稀皮,遇事处理不公,赏罚不明。动车一出事,上级就投钱给动车所搞装修,所以动车所的工作越来越糟,事故越出越频繁,可装修也越来越勤,硬件设施和办工、工作环境越来越豪华了。<br> 最为要命的就是领导们捂盖子的做法。因为动车是铁路形象,高铁是中国名片,所以动车所成了天之骄子,有着全系统最好的场地,最好的设备,最佳的环境,最光鲜的外表,但一有点事,领导首先想到的就是动车这面旗不能倒,得想办法帮他们捂着,于是出事后一推二赖,轻描淡写也就不奇怪了。俗话说,严是爱,宠是害。领导们这么干,更加骄纵了这帮自诩为精英的阿混。<br> 动车所是没有淘汰机制的,只要进了动车所,没有混不上机械师的。因为大家个个有门路,个个有人罩着,所以甭管出了多大的事,处理结果都是象征性的。前面所说的,那个连最弱智问题都答不出的机械师,上级领导通报后,为了给人家一个交代,专门下文处分,处分措施是什么呢?是通报批评,扣罚一百元,还继续跑车,让人无语吧?那个空调故障中途甩车造成全国恶劣影响的事故,从部里到局里,都积极帮他们忽悠,最后的处理决定是相关人员象征性地扣点钱,最多的才扣六百,暂时不跑车以避避风头。这点小钱对于动车的高收入来说算个啥?不痛不庠。要知道,利用职务之便私带香烟被抓住了都要扣罚几千块钱,离岗至少半年只拿基本生活费。这私带香烟可没造成什么严重后果和全国性的恶劣影响呀。两厢对比,让人情何以堪?<br> 动车所不差钱,真的不差钱。每回动车出了点事,上级必定投资给动车所重新装修,于是越出事,装修越频繁,越出事,他们那里的基础设施和硬件就越豪华。<br> 动车所进去难,出来更难。因为领导有这个意思,那就是要保持人员稳定,以利于技术积累,而且上任领导打算在适当的时候将动车维修人员及场地、设备整体划出去。这么多年了,几个动车所除了被撤职调离的领导干部,就只有一位职工借口严重的妇科病,经年累月地泡病假,持之以恒地找领导,最终领导不胜其烦,这才调离成功。<br> 动车组的精英们掌握到上层的这种打算,就经常集体找领导谈心,以工作环境恶劣,工作压力大为由,要求调离动车所,实际上是以此撒骄,让领导为了安抚他们而不断地给他们加钱。<br> 实际上,动车人员的收入比普通车的高得太多了,否则这帮善长投机钻营的家伙也不会削尖了脑袋往里钻呀,有谁是真打算为中国高铁事业多做贡献呢?不都是冲着那优厚的薪酬来的?就这样的实际工作业绩,这帮货还不满足现有的相对高薪,脸皮可真不一般地厚。<br> 六、上级领导的解决对策<br> 当年动车所刚成立的时候,当时的部领导就提出动车所要采取全新的管理模式,将劳动生产率大为提高。其实他一直有个思路,那就是深化铁路运营体制改革,将动车所的场地、设备和人员整体移交出去,和厂家售后这一块合在一起,搞动车租赁公司。我不管你们怎么修,反正我只管租车,跑一趟多少钱。这样你就得千方百计想办法降低造价,提高可维护性了,省得象现在这样用高价易耗件来钓鱼。<br> 这个思路和许多河友的想法本质是一样的。后勤保障社会化,这不光是铁路,就是军队也在搞,其好处不言而喻。从企业经营的角度来说,这么做无可厚非,但中国的事情是复杂的,动不动就能牵涉到政治正确与否。加之人亡政息,这个思路恐怕很长时间内不会再考虑了。<br> 也许正是因为前任领导有这种想法,所以在严格限制人员流出的同时,对其人员培训缺乏长远规划,前些年在管理上对此也并未真正重视。因此这些年来动车所的大爷们也依赖厂家售后和委外干活,自己落得个清闲而心安理得,个个本着混日子的想法,才没人关心将来洪水滔天呢。<br> 我曾说过,今年四月厂家售后到期后,我担心动车会频频出事,因为动车精英们以前浪费了大把光阴,如今担子一下子压上来,不出事才怪。其实从去年下半年开始,动车出事就越来越频繁了。这里要说明的是,作为运用维护部门,我们所说的出事和旅客所理解的出事完全不是一个概念。有许多事情你们即使是坐在动车上恐怕也毫无察觉,但运用维护部门可能已经急得象热锅上的蚂蚁了。虽然领导们为了高铁的颜面,为了保自己的位置而进行了和谐,但高层对实际情况还是非常震怒的,文件一个个地下,检查组、督导组一拨一拨地来,各种补充规定一个个地出台,好不热闹哟。<br> 具体地说,在涉及到人员素质这一块,领导们有什么对策呢?我大致归纳了一下:<br> 1、加强动车所全员培训,人人必须参加。<br> 2、每季组织动车所内部比武,第一名奖2000元,第二名奖1500元,第三名奖1000元,倒数第一名扣300元,倒数第二名扣200元,倒数第三名扣100元。前三名与后三名结帮扶对子,如被帮助者在下季度技能比武中脱离倒数名次,则段给予帮助者奖励,奖励金额为被帮助上一季度比武被考核的同等金额;如被帮助者在下一季度仍然在到数三名之内,则考核帮助者同等金额。但加入动车所不足半年的职工,如获前三名照样拿奖励,如获后三名则不计入考核。<br> 3、随车机械师必须先在地面干检修达三个月以上,随班实习一个月以上或三万公里里程以上方可上岗。<br> 4、加强动车组机械师后备力量储备,采取招收应届大学毕业生和全局选拔文化高、素质好的职工,提前做好适应性培训,严格准入制度,确保机械师素质。<br> 应该说领导们还是想改变现状的,但领导们的对策只是在现有基础上修修补补的做法,而且根据经验,往往是刚出事时各种运动搞得轰轰烈烈,但过一阵子等风头平息了,就一切照旧了。<br> 具体来说,我觉得这第三条是非常英明的,本来底子就差,连地面检修都没真正接触过,就去跑车,遇到事情不抓瞎才怪呢。<br> 这第一条的问题还是老问题,谁来培训?让本身就不懂的外行来培训,除了照本宣科走过场能学到什么?更何况培训内容与现场需求相脱节是铁路职教的老毛病了,因此领导这一条用意虽好,但效果不容乐观。<br> 这第二条挺有意思,根据目前已经搞过的几次内部比武来看,这种比武前三名和后三名都是那六个人。前三名奖励那么多钱没话说,但后三名只象征性罚那么一点点钱,相对于动车所的高收入来说,不痛不痒,根本就没有触动。何况这种搞法,对大多数人来说,只要不排最后三名,也没多少人愿意花大力气赚那份奖励,因为很辛苦的。<br> 第四条我要重点说说。<br> "在全局选拔文化高、素质好的职工",问题是隔行如隔山,如果是系统外的,你原来素质再好,但没搞过定检,没搞过运用,直接进动车所,其技术养成是极困难的。再说了,动车所进人从来就没有公开选拔过,何况所谓公开招聘我们见得太多太多,按人定标准,定人、陪考、走过场的事我都懒得说了。相信有点社会经验的人都清楚现在的社会究竟是怎么回事。<br> "招收应届大学毕业生"直接进动车所,这一条我坚决反对。<br> 大学生们在大学里即使真的勤奋,学的也只是一丁点理论皮毛,动手能力等于零,远不如中专生、技校生上手快。刚出校门的大学生们有几个肯真正沉到现场,穿上油污的工作服和工人老大哥一块干活的?不到现场实践,大学老师会告诉你拧螺帽时要对角拧吗?大学里有哪本教材会告诉你装风管时要在螺纹处缠上生料带,否则会漏风吗?有哪位大学教授会告诉你生料带该如何缠呢?如果没人指点,你第一回做这个,百分之五十的概率会缠错。<br> 这不仅是现在的大学生的心态问题,而且由于刚毕业的他们还远未经历过残酷现实的挫折教育,有些东西是无法言传身教的,非要他们遭遇挫折后自我反省,自我奋发。<br> 我们铁路近十年来对大学生们的培养锻炼是毫无规划和章法的。顶多就是第一年安排到各车间实习,名为实习,其实压根就不下班组干活,但骨子里的娇骄二气又让刚出校园的他们根本不可能正确认识到现场实践对自己未来的帮助,所以别说沉下心来认真钻研现场技术了,连起码的过场也不乐意走,工作服都不愿意换。而现场工人也没指望过这些少爷小姐们能真正做点什么事,加上知道他们未来都有可能有权管理自己,因此也没人会去得罪他们,硬要他们实践。<br> 正因为如此,前几天在食堂遇到一大帮年轻的生面孔,一问带队的,带队的说是刚毕业的大学生来实习。我当时就说了:他们哪里是实习?不过是来参观罢了,一个个身上干干净净,连鞋面也没脏,只怕连检修现场都没真正靠近,在门口伸长脖子瞄一眼罢了。<br> 没有真正在现场做过,不知道现场是如何运作的,不熟悉现场的各色人等究竟如何,将来就算是给你个管理岗位,你两眼一抹黑,只能任由下面的人蒙和耍。现在有的大学生毕业后因为没地方安排,随便到处晃了一年就找个闲职混着,有些甚至在看料库,一旦有了指标,就把这样的大学生直接塞进动车所搞管理,啥也拿不下来,只能打打杂,编编不重要的闲杂台帐。这样的人对于动车建设又有什么用呢?<br> 也许定这个政策的大领导是想起十三年前,某单位三位本科生成功地掌握第一代动车组的事情来了。但当时的情况和现在有太多的不同。<br> 90年代中后期,大学还没扩招,大学生在铁路上还是稀罕货。某两千人的单位统共只有24位82年以后毕业的正规大学生。而在当年那种上级要求大力提拔82年以后正规大学生的氛围之下,其他的大学生一年见习期满就都有了管理岗位,甚至坐上了火箭(当然因为没有根基,半年后摔得很惨,后来被狂踩,花了11年才重新翻身)的情况下,有3个本科生却长年在班组里干活,受了不少白眼和欺负。<br> 这三个人都如下共同点:1、都没有背景:2、都不会"来事"儿;3、长年在班组里干活,虽然保留干部身份,享受干部待遇,但却被当成工人使用,必须独立顶岗位;4、此三人经历全面,都先在定检区域干过几年,尔后又调到运用区域干活。<br> 当时为了迎接国产第一代动车组,上峰新成立一车间,除此三人外,还将全单位数得着的中专生、技校生悉数集中到该车间。车间成立不久,领导要公开选拔一名技术指导,分理论考试和实作考试,还特地注明了此三人可以免理论考试,直接进入实作考试。<br> 这三个人中最有棱角的那位立刻就明白了这是一个坑。因为他虽然不太合群,但平日里眼睛亮着呢,耳朵长着呢,虽不作声,但各种消息和议论基本都知道。当时的实际情况是领导想提拔一位半吊子老中专生,但又知道无法服众,于是才搞的这个公开选拔。<br> 虽然知道这是个坑,但以那人身上那股不服输劲头,还是想博一把。他清楚地知道,由于刚调入这个单位,所以该实作考试科目绝对是弱项,所以想考前恶补一下。他找到该单位一位据说是技术尖子的劳模,诚心诚意想请教一些东西。可你们知道人家怎么说吗?人家明着说:这个我不能教你,这是我一辈子心血的积累,我教给你了,我以后吃什么呀!<br> 当众被人顶得下不来台的那位立刻找到了领导,声明退赛。另两位同伴闻之不解,那位说了:我们的强项是理论,现在领导直接让我们跳过理论考试进入实作,表面上看是优待我们,实际上是限制我们强项,实作比赛我们胜出的机率渺芒,又无理论分数,综合打分时该如何算?他们早已挖好坑了,却玩这种伎俩堵他人之口,到时候还可到处宣传咱们三人技术烂,我才不上当呢。<br> 闻听此言,另二位恍然大悟,皆悲愤地找领导声明退赛。<br> 此后,三人知耻而后勇,做事从不嫌苦脏累,那位最有棱角的还被同事们称为拼命三郎。<br> 新一代动车组接回来,因为相对于当年的技术装备水平来说是个飞跃,因此路局要求必须要有助工以上职称的才能担当车辆乘务。此三人理所当然地被推到了当年的风口浪尖,就如同今天的380A一样。因为跑车有个好处,单位上的奖金一分钱不少,车上还有补票奖。当年动车是大领导的小金库,给了许多优惠政策,所以补票额极高,相应的补票奖对于当年我们的收入来说令人眼馋不已。有不少削尖了脑袋想上车的人在背后使了不少绊子,某些工长甚至直接找上列车员调查此三人平时在车上做不做事,好为拿下他们寻找借口。好在这三人争气,没让别有用心的人从列检的天敌――列车员口中得到想要的东西,而且列车员们的公道话堵得别有用心的人哑口无言。<br> 当年有趟动车的大闸有偶尔毫无先兆地脱扣的毛病,即使是更换大闸也无法消除。某次解车整修会诊后,厂家的意见和领导一致,认为还可以用,这种软毛病概率太低,不好找到真正原因,只有继续用,将可能的软缺陷扩大,才可能找到。达成一致意见后,大家封存了列车技术状态,准备第二日上线运行。此时,那位新晋技术指导想显摆一下,于是带上工具拆卸控制屏。捣估了半天,不出意外地无功而返。<br> 第二天早上是拼命三郎出乘。始发前半小时按规定启机,刚一接通控制屏电源就报警,无法启动柴油发电机。于是立即检查油路、水路,一切正常。眼看要发车了,他立即跑到动车另一端启机送电,然后跑到客列检所欲打电话向领导汇报(当年手机极稀罕,他连BP机也没有),但领导还未上班。<br> 这趟车要连续跑两天方才入库维修,如果此故障不排除,这两天时间内若有其他问题,机组将无备份。开车后他冷静一想,昨日封机前试过机,一切正常。然而封机后技术指导又来大显身手,问题肯定出在他动过的部件上。于是一路检查,终于发现问题出在主控制屏工控机控制模块里面一块9V高能电池的付线脱焊,此位置极其隐密。重新焊好后恢复安装,一试机一切正常。<br> 到某站后迅速跑到客列检给领导打电话,领导急坏了,说听说一大早就有电话来,肯定是出事了,但干着急联系不上。拼命三郎将事情经过详细说明,狠狠奏了技术指导一本,领导只能痛骂之。<br> 不管那位技术指导到底是故意搞破坏挖坑(此人平日行为卑劣,专作损人利已的事,因此口碑极差),以便达到或帮他人达到不可告人的目的,还是确实是疏忽大意,拼命三郎都捍卫了大学生的自尊,给了种种诽谤污蔑一记响亮的耳光。<br> 此后十数年,虽然此三人均换过不少单位,但无论到哪个岗位上都能胜任有余,这都是那些年在班组里干活打下的底子。<br> 讲了这么多,无非是想说明,一个人技术经验的积累是多么地不易,而且主要得靠自己争气,指望别人能教透你是不现实的。现实中远不如象牙塔里想象的那么简单美好,没有从定检、运用几年现场历练的积累,直接进技术含量相对最高的部门,恐怕是拿不下来的。这种部门不可能让你慢慢从头积累,你要是没点底子就进去,只怕在你胜任之前就早让人给阴了,这样恐怕于单位,于个人都不是什么好事。所以,对刚毕业大学生就直接进动车所,我只能摇头。<br> 七、我的解决对策<br> 我觉得领导要当真想从根本上扭转动车所的现状,非要痛下决心不可,各项政策必须来实的,轰轰烈烈搞几次运动是不能从根本上解决问题的。<br> 目前动车所急待解决的问题是人员素质,而根子上却是管理问题。<br> 在动车所领导的人选上,不能再过多地考虑其他的事情了,必须把敢黑下脸来狠抓管理,不怕得罪人,但又能很好把握张驰有度的,富有管理经验的人放在这个位置上。此外,领导要真正支持他的工作,不要人家在前方卖命做黑脸得罪人,大领导在后面放水做好人,让人家腹背受敌,这工作就没法做下去了。再好的政策也要认真执行才有效,而真正需要认真执行的却往往是制订这些政策的大领导们。<br> 对新晋人员的选拔,不管他原来有多好的业绩,都必须先到定检部门基层做过,后到运用部门基层做过。动车所不能成为外行的技术培训所,那些搞动车必须的实践基础必须先在其他部门打牢打扎实。<br> 运用部门的人想进动车所,也甭另外搞什么选拔了,直接规定必须参加过快速修比赛的人才能进动车所,如果要差额,就按快速修比赛的名次来高低排序。这是因为能够参加快速修比赛的人,技术基础是比较好的,而且参加快速修比赛前,各单位都要将这些人抽下来脱产强化培训,这个培训远不是职教科的培训可以相比的,那是人家出力流汗扎扎实实地在现场实作训练,一切按最正规的来。因此能参加快速修比赛,其实作水平都能百尺竿头,再进一步。<br> 快速修比赛的赛前强化训练和比赛是非常艰苦和紧张残酷的,偷奸耍滑之徒是绝对吃不了这个苦的。因此也不必再另外搞选拔了,非快速修比赛人员不用,这一条很过硬很公平的。<br> 选出来的新晋人员发本教材自学理论,不必再送到大学里浪费光阴,先到动车生产厂家的总装调试车间实习。与工厂协商,将这些人的工资奖金直接打到工厂帐上,工厂安排他们到基层岗位作工人使用,由工厂负责考核,这些工资奖金是否能足额拿到手,就看他们跟班干活的好坏了。任何一家现代企业都不可能什么都自己制造,一定有下级分包商,总装调试时不可避免地会遇到一些问题,在这种车间跟班实作,可以学习人家调试时遇到问题是如何分析原因的,都有些什么可能原因,人家是如何排查处理的,这才是运用维修所需要的东西。<br> 如果这些人能单独顶岗了,才算实习合格,可以转到大修基地进行第二阶段培训了,基本方法同上。大修基地的任务是对跑了一定里程的动车进行状态修,有许多设备是和动车运用所一样的,只不过人家的检修要求更高。如果在这里实习能合格,回动车所可以直接顶岗了。<br> 以上说的是新晋人员的岗前培训,那么对现有人员该如何办呢?这就要求领导大力支持,另拖后腿了。<br> 我的意见是,对人员经历进行筛选,凡没有做过普通车运用维修的人,甭管原来是做什么的,甭管背景有多硬,一律清出动车所,爱上哪去上哪去。为什么要一刀切呢?因为没办法,个个有门路,留谁不留谁都会惹来无尽的麻烦,何况他们缺了运用这门课,就算是现在在动车所表现还算过得去,因为基础没打好,也不利于他们将来百尺竿头更进一步。对于其中表现还好的人,领导要有针对性地放到运用部门的几个关键岗位补课。<br> 这同时也是验他们成色的过程,当真要有潜质有悟性,那用不了多久,在运用部门照样能脱颖而出。<br> 留下来的人也别先庆幸,噩梦才刚刚开始。谁的技术好,谁的技术糟,谁干活踏实,谁光说不练,这一切都别自吹自擂,用他们的实际表现来给自己赚工资吧。<br> 留下来的人,开始时每月只发给最低生活费,这个钱还必须要出满勤才能拿满。剩下的钱拿出来外聘技术顾问及奖优罚劣。<br> 外聘技术顾问时严把质量关,从厂家售后服务人员里物色,找那些技术全面的尖子,最好是快退休的老师傅,退休以后外聘技术顾问时,少了许多现实的考量,比较容易将技术倾囊相授。<br> 每天动车入库检修,动车所的人每人在各自岗位上全面检查一遍,书面写下发现的故障。将故障单先收上来,再让技术顾问看一遍车打故障,再相对照一下,发现一条故障给多少钱。<br> 发现一些需要根据故障现象进一步判定故障原因及部件的故障时,技术顾问召集相关人员开个小会,让他们每个人说说自己的见解,再进行技术点评。根据他们见解的正确程度打分,拉开档次,计工员那里搞一个考核表,什么样的故障,什么样的分数给多少钱,一笔一笔给记着。<br> 处理故障时,技术顾问不动手,只在旁边指导。谁动手做,给谁钱,因为听十遍不如看一遍,看十遍不如亲自动手做一遍。脱离不了技术顾问指导的人,修的车出了问题,考核金额由所里支付,不单独考核个人,以保护其学技术的积极性。<br> 简单一句话,就是你每月最后能拿多少钱,全看你能发现多少故障,能判断正确多少故障原因,能亲手消除多少故障。你要是继续混日子,每月天天熬夜却只能拿到当地的最低生活费,想调走连门都没有,我倒要看看哪个阿混能受得了。受不了就乖乖地干活学技术去。每个故障多少钱,这需要领导根据以往的故障统计资料进行汇总分析,结合工资总额,算出一个大致合理的标准。<br> 如果技术顾问认为你已经完全可以独挡一面了,那就安排你独挡一面,他说了算,这比外行的职教部门的考试要靠谱得多。独挡一面后,按路局核准的辆单价,趟单价全额给你钱。但如果你修的车出了问题,上级有考核你得自己承担。只有能独挡一面的人,才有资格做随机械师。<br> 以后全局范围内,全国范围内搞动车快速修大赛,参赛人员从可以独挡一面的人里面派出,拿了名次回来除了各级给的一次性奖励,还可以聘为所里的首席技师,比照外聘的技术顾问待遇额外拿钱。<br> 以上想法我曾经跟动车所某些人简单说过,那几位立刻蹦了起来,声称要是有领导这么狠,他们就立马申请调走。<br> 呵呵,要是真有人受不了这么做而提出调离,上级领导可得扎紧口袋。这个口子要是开了条缝,恐怕就刹不住了。人是需要有点压力的,有压力才有动力。先前在动车所舒舒服服地拿着高薪混了四年日子,现在必须为此付出点代价了。不过我前面说过了,动车的运用维修没有想象中的那么高不可攀,主要的困难是在厂家设计、制造方面,搞过运用维修的人,逼一逼,下点功夫,全面掌握用不了太长时间。<br> 只有动车所的人技术全面提高了,所有相关的规章制度才有真正落实下去的可能,动车所的各项工作才有可能有改观。<br> ------- The End -----<br> 打喷嚏链接:<a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46991"><a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46991">http://www.dapenti.com/blog/more.asp?name=xilei&id=46991</a></a><br> 1988——我想和这个世界谈谈(韩寒最新小说)<br> 用手机上喷嚏网:m.dapenti.com 每周精华尽在【喷嚏周刊】 《喷嚏图卦》图片托管于又拍网 <br> <br> 原文地址: <a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46991" target="_blank"><a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46991">http://www.dapenti.com/blog/more.asp?name=xilei&id=46991</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-59328527200631959092011-07-24T10:36:00.000-04:002011-07-24T10:37:11.235-04:00从日本家族看当今红色贵族<div><p style="width=600px"><img src="http://findingschool.com/ads/banner/275_250_v2.gif" width="250px" style="float:right;margin-top:0px;margin-bottom:10px;margin-left:10px;margin-right:0px;"> 作者:信力建 | 评论(2) | 标签:时事观点<br> 一个众所周知的事实是:在改革开放年代,各级首脑的子女堂而皇之地步入政界商界已成为趋势和时尚,原先归于毛氏一家的资产现在由不下500家红色贵族所有。改革开放以来,中共各层级的官员的子女乃至亲朋,享有丰厚的权力资源和资本资源,成为改革开放进程中最大的渔利者。他们掌握了各层级的话语权,在权势和资本的互补双赢中呼风唤雨,成为社会的主导和中坚力量。尤其是在世纪90年代开始的中国市场经济大潮中,在房地产业、矿山资源产业、金融证券业以及能源产业等领域,政商勾兑寻租成为一个相当普遍的现象。进入新世纪,伴随"国进民退"和普通民营企业受到贬抑,部分国有垄断企业,以及不少具有官员背景的强势民营企业,以公权力为靠山和保护伞,赚取超额利润,寻求资本回报。这些由红色后代组成的"特殊利益集团"势力坐大,不仅表现在对自然资源的"盘踞",而且表现在他们在话语权方面也成功地给自己涂抹了一层意识形态合法色彩,在保卫"国家经济安全"、"产业安全"等等口号得到政策保护,同时以"国际惯例"和"中国特色"为依据,上下要挟,左右逢源。那么这些红色贵族能不能在中国社会转型和国家发展中扮演正面角色呢?我们不妨来看一看一下日本明治维新时期贵族的地位和作用,以为他山之石。<br> 日本"明治维新"以后,仿照西方国家建立了近代行政机关。根据现代宪政原理,国家行政体制应以政务和事务相分离为原则,也即在官员的产生、职务、责任以及在政府决策过程中的作用上各司其职,互不关联。在具体操作上,行政政务官的产生和去职主要基于国民的选举,其地位、职权和作用主要由国家的宪法或宪法性法律规定,他们是国家政策的制定者和执行领导,对于决策的成败负有政治责任。 行政事务官的任职条件、地位、职权和作用等均主要基于议会通过的行政法规范,他们在国家政策的制定和执行方面起着政务官助手的作用,对于决策的成败通常仅负法律上的和业绩上的责任;他们在政治上保持中立,不依附于任何政党和政治势力,这是事务官与政务官的本质区别。<br> 必须指出的是:虽然从法律制度上,日本的行政体制与上述近代行政制度的要求完全一样,但有着自己的独特之处。这种独特性之一就是日本官僚体制的家族性。《日本国宪法》第十五条第二款规定:"任何公务员,皆为全体之服务者,并非为一部分之服务者";第四十三条规定:"两议院以代表全体国民之当选议员组织之"。然而,在政治实践中,似乎公务员和议员并不一定是全体的服务者和代表,与其他国家的政制相比,日本的政治实践中出现的政治家族及家族性似乎更为突出一些。日本官僚政治中的家族性至少体现为这样三种现象:首先,某一家族可称为传统的"官宦之家",代有政治家或行政官员;其次,行政各部门具有派阀特点,特定组织的内部形成一种类似于家庭式的小利益集团;再次,官、吏一体或互相包容和互相关心,公权力的执掌者多数从官僚步入仕途。<br> 对比而言,中国的新兴贵族跟日本政治家族来源有很大相似性,他们也主要有三大来源。其一为草根崛起。最典型的是浙商和广东商人。其特点是,白手起家,几乎没有任何背景,一步步在激烈竞争中壮大,最后经十年乃至几十年的浸润,造就财富家族。在浙商中,茅氏商业家庭的茅理翔最初以生产打火机起家,后来其子茅忠群开始进军厨具行业,最后成为行业龙头;其女儿女婿则成为外协厂商,另起炉灶。在广东商人中,卢氏兄弟历经十多年奋斗,遂造就万和在热水器行业的国内龙头地位,成就了兄弟型的商人大家庭。而在内地,四川希望集团的刘永好几兄弟,也有类似创业经历,不同的是,刘氏兄弟后来分家,形成了泛商业家族。这类商人,多集中在竞争性产业领域,其从事的行业,多为中国市场化最彻底的行业。这一家族虽然在经济领域呼风唤雨很有实力,但真正影响中国前途和未来的则是下面两类所谓"红色贵族"——即其二为体制内起步,以商人终结,或者本身亦官亦商。最典型的为苏南商人。其特点是,创始人最开始在体制内谋得执掌一家企业的机会,后来通过改制,成为股份制企业的实际掌控人。最为典型的,在中国大陆当数TCL的李东生。李本为惠州市政府委派到企业的体制内管理人员,通过增量式改革,最后获得了企业控制权,李亦成为内陆世富。而在青岛,双星总裁汪海也通过改制终于从体制内的经营者,转变为独立的商人。其三为红色家族。这种类型的商人家族,拥有深厚的政治资本,故起步高,容易获得社会资源。这些红色商业家族,多从事一些需要审批的贸易、基础产业、能源等产业。房地产行业亦多为红色家族钟情的领域。因为有后台,政经通吃,所以这两类人不仅垄断了中国经济命脉,而且直接决定中国未来走向。<br> 从来源而言,一般认为,日本现代官僚体制是在二战后形成的,但其渊源则可追溯到"明治维新"时期。第二次世界大战后,日本政治重建后,行政机关一般还恪守政治中立原则,国家公务员制度中正面的"一家意识"和相对自由的空气比较浓厚。但在"五五年体制"形成后,在吉田茂政府的"独夫体制"下,国家政策的意志性单一化,新兴政治派阀为推行一党一派的意志,必然要求建立一种服从于政治需要的官僚体制,也即要求行政官僚能够配合政府政策的制定与执行,从而使官僚机构出现了"政治化"的趋势。这种趋势发展到今天,逐步形成了官僚制度家族化的上述三种表现。<br> 而中国的红色家族则来源于中国传统文化和红色文化。就前者而言,传统文化中"亲人社会"具有强大的内聚力。这首先在于,它是以血缘关系为纽带的,而血缘关系一经形成就无法改变。举凡其他任何社会都可以改变。如中国民间所说"遇险是救母亲还是救妻子?"相当多数的人选择救母亲,因为母亲是唯一的,妻子则可以不是唯一的。所以,由血缘关系构成的血缘共同体是最牢固的,"血浓于水"。中国民间因此流传"打架亲兄弟,上阵父子兵"。其次,它是利益共同体。"亲人社会"不仅"骨肉相亲"、"血肉相连",而且利益悠关。由于财产的家族占有制,有利益可以共享,有难处可以互帮。一损俱损,一荣俱荣。家庭是个体生命飘泊的港湾。当家庭与家族之间、家族与家族之间发生冲突时,最可靠的保护是家庭和家族共同体。再次,它是信任共同体。在生活世界里,人们必然会发生各种交往。交往中就会存在信任关系,信任就可以交往、交心。而在信任对象中,亲人是最容易,也是最值得信任的。因为他们自小长期相处,相互了解,更重要的是还有天然的血缘关系和利益关系作为支撑。因此,亲人是天然可以信任的"自家人",其他人则还需要因为熟悉才能信任,其交往获得的信任成本大大高于"亲人",随时都面临背叛的风险。因此,家族"亲人社会"的内聚力与排他性是相辅相成的。内聚力恰恰是建立在排他性基础上的。只有排他,才能保持内聚。就后者而言,则因为在红色文化中有诸如"枪杆子里面出政权"、"贫农打江山贫农坐江山"的观念作用,在中国由政治一元国家转型为经济多元国家过程中,那些有着红色血统和行政资源的红色后代自然在这场新时期利益分肥运动中以公权力为靠山和保护伞,赚取超额利润,寻求资本回报,成为拥有政治背景的经济巨鳄。<br> 事实上,二战前的日本官僚制度,从观念上说,建立在"家族国家观"的基础之上。日本民族自认为是"天照大神"的子孙,天皇是日本民族大家庭的家长;对于家长,人们不能对他的权威有任何怀疑,只能绝对服从。这种神国论的表现,如英国人费尔墨所观察的,人们对天皇的服从,实际上可以从日本家庭中子女对父母的盲从而得到说明;与西方国家中世纪的"家族国家"建立在国王有一些英雄祖先不同,日本天皇家族的源流并不可考,日本人对天皇的服从,完全是对"现人神"地位的服从。也就是说,在服从权威上,明治时代的日本官吏是不会去问一个"为什么"的。这一点,在中国红色贵族形成过程中也照样存在,只不过表现为更为粗俗的"老子英雄儿好汉,老子反动儿混蛋"的势利街头哲学而已。<br> 这种家族官僚制的弊端,是一目了然的:主要它对国家决策产生不利影响的各种表现。官僚的家族性本身并不一定构成一种弊害,通常要与决策过程或公权力行使过程结合起来进行分析,才能看到它的负面表现。至于家族性导致的腐败和对互相错误的包庇、遮掩等,则不是它的主要表现。一般认为官僚制在决策和权力方面产生结构性弊病的症结在于自民党一党长期执政。<br> 于是,我们看到,在日本官僚与国会、政府的家族式关系模式下,国家政策法律的制定与执行与中国十分类似。中国政府构造的特点是官、吏不分,党与政不分。譬如,正常情况下,一个人年轻时进入政府机关,从基层做起,如果升职到了县、市、省或中央行政机关的领导(包括正职和副职),就成了所谓的政务官了;当他到了一定年纪或任职期满(按宪法规定,行政首长连续任职不得超过10年),如果还有工作能力,就会经过选举,进入人大担当常委会委员以上的职务;贯穿这个人成功渡过公职一生的主线,是他能正确理解和执行共产党的政策方针。中国目前政府机关的官僚主义、腐败等等现象,都与这种议、官、吏一家的制度有关,也与一党长期执政所带来的惰性有关。<br> 然而,更值得我们重视的是日本家族和中国红色贵族的最大区别没那就是:尽管日本家族官僚制从九十年代初显现出一些类似的弊病,但与中国官僚体制下的弊病相比仍是小巫。区别就在于日本政治制度整体上的民主程度比较高,任何政治决策与执行不能全然摆脱民意的制约。而中国红色贵族则不具备这样的约束机制——这或许是中国红色贵族最令人担心的地方。<br> 因此,我们不妨得出这样的结论:中国新兴的红色贵族要存在并且以比较正面的形象示人的话,唯一的办法就是在民主宪政的框架下扮演社会稳定和发展的主要角色——舍此,则不仅不能得到社会认同,就是能不能继续存在下去,也还是问题。<br> 一五一十部落原文链接 | 查看所有2个评论<br> 信力建的最新更新:<br> 姚明到底有多伟大? / 2011-07-24 09:28 / 评论数(0)<br> 为什么新加坡秩序良好? / 2011-07-23 10:10 / 评论数(4)<br> 信孚电讯(7.22)——人间地狱 / 2011-07-22 14:13 / 评论数(4)<br> 信孚要闻(7.22)人人富裕的时代不堪设想 / 2011-07-22 13:59 / 评论数(4)<br> 政府应善待每个国民 / 2011-07-22 08:55 / 评论数(3) <br> <br> 原文地址: <a href="http://item.feedsky.com/~feedsky/my1510/~5935684/538853141/1488578/1/item.html" target="_blank"><a href="http://item.feedsky.com/~feedsky/my1510/~5935684/538853141/1488578/1/item.html">http://item.feedsky.com/~feedsky/my1510/~5935684/538853141/1488578/1/item.html</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-26986058083937966832011-07-22T10:29:00.001-04:002011-07-22T10:29:57.915-04:00Fedora15完美的桌面安装指南<div class="title"><h2>本来还想用google翻译翻翻的,结果不太给力啊,还是直接原文了,原文地址见</h2><a href="http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/">http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/</a><br> <br><h2><a href="http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/" rel="bookmark" title="Permanent Link to Fedora 15 Post Installation Guide for Perfect Desktop">Fedora 15 Post Installation Guide for Perfect Desktop</a></h2> <span class="author"> Posted by ranjith siji</span> <span class="comm"><a href="http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/#comments" rel="nofollow" title="Comment on Fedora 15 Post Installation Guide for Perfect Desktop"><span class="dsq-postid" rel="1406 http://ranjith.zfs.in/?p=1406">5 Comments</span></a></span></div> <p><a href="http://ranjith.zfs.in/wp-content/uploads/2011/05/fedora151.jpg"><br> </a><a target="_blank" title="Fedora" href="http://fedoraproject.org/">Fedora</a> 15 is released with more great features. Above All gnome 3 Rocks…!!!. Fedora is the complete distribution with the full installation of a working copy of <a target="_blank" class="zem_slink" title="GNOME" rel="homepage" href="http://www.gnome.org/">gnome 3.0</a> and <a target="_blank" class="zem_slink" title="GNOME Shell" rel="homepage" href="http://live.gnome.org/GnomeShell">Gnome shell</a>. <a target="_blank" title="Ubuntu" href="http://ubuntu.com/">Ubuntu</a>'s Controversal movement away from gnome shell to unity started lot of discussions. But now its time for gnome to prove what they giving to the end user. The New features includes a completly updated gnome environment, the 2.6.38 kernal, KDE 4.6.0, XFCE 4.8 and <a target="_blank" class="zem_slink" title="LXDE" rel="homepage" href="http://lxde.org/">LXDE</a> desktop environments, <a target="_blank" class="zem_slink" title="Systemd" rel="homepage" href="http://freedesktop.org/wiki/Software/systemd">SystemD</a> etc.. . Fedora is a fully functional rock solid free software operationg system. So all the proprietory codes and softwares are omitted from the basic Fedora.</p><h2>Things to do after install fedora 15</h2><p>Things to do after install fedora 15 is a good quesiton always. For a Complete desktop for a user we need more softwares for MP3, DVD and Video playback/recording etc… For this reason you have to install that software from third party repositories. <a target="_blank" class="zem_slink" title="Fedora" rel="homepage" href="http://fedoraproject.org/">RPM Fusion</a> is a third party repository consists all of other softwares for better media support.</p> <h2>Gnome shell Tweaks for Fedora 15</h2><p>You need some tweaks for gnome shell to use in fedora 15. You can have the gnome-tweak-tool to tweak the settings, interface, fonts, themes etc..</p><p>Just install</p><pre>yum install gnome-tweak-tool</pre><h2>Dconf Editor for Fedora 15</h2><p>The dconf editor will help you to set various values in gnome shell. like enable the minimize, maximize buttons, show seconds in the clock etc..</p><p>—–</p><p>For the complete installation of gnome shell extensions in fedora 15 and more gnome shell themes, gtk 3 themes in fedora 15 just view the other post<a href="http://ranjith.zfs.in/gnome-shell-extensions-for-fedora-15-open-suse-11-4-arch-linux/"> gnome shell extensions in fedora 15</a>.</p><p>For GUI people just open the overlay mode in gnome or press window key. then type add then you will get add or remove programmes then go for a search.</p><p><strong>Open Terminal Applications > System Tools > Terminal. then su – for a <a target="_blank" class="zem_slink" title="Superuser" rel="wikipedia" href="http://en.wikipedia.org/wiki/Superuser">root user</a> . Enter your root password. All the commands are performed as root on the terminal otherwise just add su -c 'command' . </strong></p> <p>Prepare <a target="_blank" class="zem_slink" title="Yellowdog Updater, Modified" rel="homepage" href="http://yum.baseurl.org/">Yum</a> for Fast Installation in Fedora 15</p><p><span style="font-size: small;"><strong>* Fastest Mirror Plugin</strong></span></p> <pre><span style="font-family: 'Courier New,courier';">yum install yum-fastestmirror</span></pre><p>The fasterstmirror will find the fastest mirror near you and download with great speed.</p><h2>Enable Restricted Repositories in Fedora 15</h2> <p>To enable the RPM Fusion repository just install</p><pre>su -c 'yum localinstall --nogpgcheck <a href="http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm">http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm</a> <a href="http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm">http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm</a>'</pre><h2><a target="_blank" href="http://code.google.com/p/ailurus/">Ailurus</a> – The Complete Tweak tool like <a target="_blank" class="zem_slink" title="Ubuntu (operating system)" rel="homepage" href="http://www.ubuntu.com/">Ubuntu tweak</a></h2> <p> </p><div class="wp-caption alignleft" style="width: 138px"><img title="Ailurus" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8waf20PpsP26iXb1OJ2tDwR7duT09Pth5MLlDUp5v8eEw-D_I-tTpSgbRi9qxOn3x_KRbvrkxek8YEq8QrRJwjcp83xMDK41a5QAjX8xm46UabjLQ1zerT2VZubDSNWPT0nLpmtbYql77/s1600/128x128_IGl2O1.png" alt="Ailurus" height="128" width="128"><p class="wp-caption-text"> Gnome Tweak tool for Fedora 15</p></div><p>Ubuntu tweak is a great tool to tweak various settings in ubuntu. It is a third party software and helps users to set various configurations in ubuntu very easy. A tool like ubuntu tweak in fedora is a must need for a less terminal savy users or developers.</p><p> </p><p>Here is the answer Ailurus</p><p>Ailurus is cross-Linux-distribution GPL software. It is a simple application installer and <a target="_blank" class="zem_slink" title="GNOME" rel="homepage" href="http://www.gnome.org/">GNOME</a> tweaker, which aims at making GNOME easier to use.</p> <p><a target="_blank" href="http://code.google.com/p/ailurus/downloads/list">Download this great tool</a> from google code project. You will get rpm for fedora 14 but it is working amazing on fedora 15</p><h2>Install <a target="_blank" class="zem_slink" title="Adobe Acrobat" rel="homepage" href="http://adobe.com/acrobat">Adobe Acrobat Reader</a> in Fedora 15</h2> <p>Next we add the adobe repository for downloading Acrobat Reader, by running this at the terminal</p><pre><code>rpm -Uvh <a href="http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm">http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm</a></code></pre> <pre><code>rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux</code></pre><pre><code>yum install AdobeReader_enu</code></pre><p>Just Start the Acrobat Reader from Applicaitons > office > Acrobat reader.</p><h2>Internet Applicaitons for fedora 15</h2> <p>The firefox 4.0.1 is the default browser in fedora 15. But Chrome is a better alternative. You can add the repository and install google chrome on fedora 15 very easly.</p><h3>Installing <a target="_blank" class="zem_slink" title="Google" rel="homepage" href="http://google.com/">Google</a> chrome in Fedora 15</h3><p>To add the google repository edit the file.</p> <p><code>gedit /etc/yum.repos.d/google.repo</code></p><p>for 32 bit OS Version</p><p><span style="font-family: 'monospace'; color: #7a0874;"><strong>[</strong></span><span style="font-family: 'monospace';">google</span><span style="font-family: 'monospace'; color: #7a0874;"><strong>]</strong></span></p> <pre><span style="color: #007800;">name</span>=Google - i386ff</pre><pre><span style="color: #007800;">baseurl</span>=http:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl.google.com">dl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>rpm<span style="color: #000000;"><strong>/</strong></span>stable<span style="color: #000000;"><strong>/</strong></span>i386</pre> <pre><span style="color: #007800;">enabled</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgcheck</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgkey</span>=https:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl-ssl.google.com">dl-ssl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>linux_signing_key.pub</pre> <p>for 64-bit OS Version</p><pre><span style="color: #7a0874;"><strong>[</strong></span>google64<span style="color: #7a0874;"><strong>]</strong></span></pre><pre><span style="color: #007800;">name</span>=Google - x86_64</pre> <pre><span style="color: #007800;">baseurl</span>=http:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl.google.com">dl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>rpm<span style="color: #000000;"><strong>/</strong></span>stable<span style="color: #000000;"><strong>/</strong></span>x86_64</pre> <pre><span style="color: #007800;">enabled</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgcheck</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgkey</span>=https:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl-ssl.google.com">dl-ssl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>linux_signing_key.pub</pre> <h3>Install <a target="_blank" class="zem_slink" title="Google Chrome" rel="homepage" href="http://www.google.com/chrome">Google Chrome</a> Stable Version on Fedora 15</h3><p>Just type this line on the root terminal</p><p> <code>yum install google-chrome-stable</code></p><p><code> </code></p><p> </p><p>Or You can download the google chrome browser from <a target="_blank" href="http://www.google.com/chrome/eula.html">chrome website</a>. Download the rpm file</p> <p>to install you need the dependency lsb</p><p>to install that</p><pre>yum install redhat-lsb</pre><p>Then try to install the downloaded rpm by just double click on it or in terminal</p><pre>rpm -ivh google-chrome-stable_current.rpm</pre> <h3>Install Opera on Fedora 15</h3><p>You can download <a target="_blank" class="zem_slink" title="Opera (web browser)" rel="wikipedia" href="http://en.wikipedia.org/wiki/Opera_%28web_browser%29">Opera browser</a> from <a target="_blank" title="Opera on Fedora 14" href="http://www.opera.com/browser/download/">opera's Official Webiste</a>. Opera is the most advanced browser with HTML 5 and <a target="_blank" class="zem_slink" title="Cascading Style Sheets" rel="wikipedia" href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets">CSS 3</a> support.</p> <p>Just double click on the rpm will install the browser without a hazile.</p><h3>Install Pidgin on Fedora 15</h3><p>Pidgin is an alternative for the default empathy IM Client. Some times it works better with webcams.</p> <pre>yum install pidgin</pre><h3>Install Google talk Plugin in Fedora 15</h3><p>Just download the rpm from Google Talk Website and install it. Download from <a target="_blank" title="Google Talk Plugin for Fedora 14" href="http://www.google.com/chat/video/download.html">http://www.google.com/chat/video/download.html . </a></p> <p>Just double click on the rpm on the downloads. Type the root password. It will automatically install.</p><h3>Install skype on Fedora 15</h3><p>Skype is a good <a target="_blank" class="zem_slink" title="Instant messaging" rel="wikipedia" href="http://en.wikipedia.org/wiki/Instant_messaging">IM client</a> for all operating system. You can chat, Video and Audio call with unmatched voice clarity and video quality over internet.</p> <p>Just download from <a target="_blank" title="Skype for Fedora 14" href="http://www.skype.com/go/getskype-linux-beta-fc10">skype website.</a></p><p>Just double click on the rpm. It will install automatically.</p><h3>Install Google talk on Fedora 15</h3> <p>The google talk plugin will help you to call your friends from gmail interface. It now supports video calling. You can download <a target="_blank" href="http://www.google.com/chat/video/download.html">this plugin from google website</a></p> <h3>Install Gwibber on Fedora 15</h3><p>Gwibber is a universal Broadcast Client for twitter, <a href="http://identi.ca">identi.ca</a>, Buzz, Flickr, FriendsFeed, Facebook, Ping.fm, Qwaiku etc.. It is the default Broadcast client on Ubuntu. Installation is simple.</p><pre>yum install gwibber</pre><h3>Install Google Earth on Fedora 15</h3><p>The most advanced map software from google. You can search and find lot more . <a target="_blank" title="Google Earth on Fedora 14" href="http://www.google.com/earth/download/ge/agree.html">Just download the bin file</a> and execute it.</p> <p>./GoogleEarthLinx.bin</p><h3>Flash Player Plugin for fedora 15</h3><pre>yum install flash-plugin</pre><p><span style="font-size: x-large;"><strong>Graphics Appications for fedora 15</strong></span></p><h3>Gimp</h3><p> the most advanced Image Editor in Linux. The latest Coming Version will have great features. This is included in the default package. If not just install</p><pre>yum install gimp</pre><h3>Inkscape</h3><p>The best vector editor application in free software. Good for creating svg files.</p><pre>yum install inkscape</pre><h3>Google Picasa</h3><p>picasa application for organizing and editing digital photos. You can download picasa from google.</p> <p><span style="font-size: small;">rpm, for Red Hat/Fedora/Suse/Mandriva i386 or x86_64:<br> </span><a target="_blank" href="http://dl.google.com/linux/rpm/testing/i386/picasa-3.0-current.i386.rpm"><span style="font-size: small;">http://dl.google.com/linux/rpm/testing/i386/picasa-3.0-current.i386.rpm</span></a></p> <h3>Xara Xtreme</h3><p>Xara is a powerful, general purpose graphics program for Unix platforms including Linux, FreeBSD and (in development) OS-X.</p><p><strong>» </strong><a target="_blank" href="http://downloads.xara.com/opensource/RecXaraLX0.7_rev1692.package"><strong>Download Xara Xtreme (version 0.7 Revision 1692)</strong></a> (Autopackage Archive – 19MB)</p> <p><a target="_blank" title="Xara Software" href="http://www.xaraxtreme.org/download.html">Detailed Installation Instructions</a> here.</p><p>Phatch</p><p>Phatch is a simple to use cross-platform GUI Photo Batch Processor which handles all popular image formats and can duplicate (sub)folder hierarchies. Phatch can batch re-size, rotate, apply perspective, shadows, rounded corners, … and more in minutes instead of hours or days if you do it manually. Phatch allows you to use EXIF and IPTC tags for renaming and data stamping. Phatch also supports a console version to batch photos on web-servers.</p><pre>yum install phatch nautilus-phatch</pre><h2><span style="font-size: x-large;"><strong>Office Applications for Fedora 15</strong></span></h2><h3>Libreoffice is the official office package for Fedora 15</h3> <p>The total libreoffice package is available on the DVD package. You can install <a href="http://openoffice.org">openoffice.org</a> seperatly.</p><h3>Libre Office 3.3.0 on Fedora 15</h3><p>LibreOffice is a productivity suite that is compatible with other major office suites, and available on a variety of platforms. It is the clone of Openoffice.org from document foundation. Lot of improvements and bug fixes from <a href="http://openoffice.org">openoffice.org</a> done by the libreoffice team. Also other distros are supporting this office suite.</p><p>Download : <a target="_blank" href="http://www.libreoffice.org/download/">Libreoffice</a></p><p>Extract the file and install</p><p>rpm -ivh RPMS/*.rpm</p><h3>Scribus on fedora 15</h3> <p>Scribus is an desktop open source page layout program with the aim of producing commercial grade output in PDF and Postscript, primarily, though not exclusively for Linux.While the goals of the program are for ease of use and simple easy to understand tools, Scribus offers support for professional publishing features, such as CMYK color, easy PDF creation, Encapsulated Postscript import/export and creation of color separations.</p><pre>yum install scribus</pre><h2>Video Codecs for Fedora 15</h2><p>To play various Video formats we need some codecs.</p><h3>Gstreamer</h3><pre>yum install gstreamer gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly</pre> <h3>FFMpeg</h3><p>FFMpeg is a complete and free Internet live audio and video broadcasting solution for Linux/Unix. It also includes a digital VCR. It can encode in real time in many formats including MPEG1 audio and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.</p><pre>yum install ffmpeg ffmpeg-libs</pre><h3>K3b MP3 decoder plugin</h3><p>When you start k3b it says no mp3 decoder plugin. to install</p><pre>yum install k3b-extras-freeworld</pre> <h2>DVD and Video Players for Fedora 15</h2><p><strong>DVD playback </strong></p><p>In order to play DVDs you must install the appropriate codecs.</p><pre>yum install libdvdread libdvdnav lsdvd</pre><p>you can use Livna for installing libdvdcss.</p> <pre>su -</pre><pre>rpm -Uvh <a href="http://rpm.livna.org/livna-release.rpm">http://rpm.livna.org/livna-release.rpm</a></pre><pre>yum install libdvdcss</pre><h3>VLC</h3><p>VLC media player is a highly portable multimedia player and multimedia framework capable of reading most audio and video formats as well as DVDs, Audio CDs VCDs, and various streaming protocols. It can also be used as a media converter or a server to stream in uni-cast or multi-cast in IPv4 or IPv6 on networks.</p><pre>yum install vlc</pre><h3>Mplayer / SMplayer / Gnome Mplayer</h3><p>MPlayer is a movie player that plays most MPEG, VOB, AVI, OGG/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ, and PVA files. You can also use it to watch VCDs, SVCDs, DVDs, 3ivx, RealMedia, and DivX movies. It supports a wide range of output drivers including X11, XVideo, DGA, OpenGL, SVGAlib, fbdev, AAlib, DirectFB etc. There are also nice antialiased shaded subtitles and OSD.</p><pre>yum install mplayer mplayer-gui smplayer gnome-mplayer</pre><h3>Kaffeine</h3><p>Kaffeine is KDE Mediaplayer with xine engine.</p><pre>yum install kaffeine</pre> <h3>Avidemux</h3><p>Avidemux is a very good video editor. Install it like this</p><p><br class="spacer_"></p><pre>yum install avidemux</pre><p><br class="spacer_"></p><h2>Mp3 and Audio Players for Fedora 15.</h2><h3>Audacity</h3> <p>Audacity is a cross-platform multitrack audio editor. It allows you to record sounds directly or to import files in various formats. It features a few simple effects, all of the editing features you should need, and unlimited undo. The GUI was built with wxWidgets and the audio I/O supports PulseAudio, OSS and ALSA under Linux. This</p><p>build has support for mp3 and ffmpeg import/export.</p><pre>yum install audacity</pre><p>Or you can install Audacity with mp3 export support.</p><pre>yum install audacity-freeworld</pre> <h3>Audacious</h3><p>Audacious is a media player that currently uses a skinned user interface (based on Winamp 2.x skins) as well as a separate GTK2 based front end. Historically, it started as a fork of Beep Media Player (BMP), which itself forked from XMMS.</p><pre>yum install audacious audacious-libs audacious-plugins audacious-plugins-freeworld audacious-plugins-freeworld-aac audacious-plugins-freeworld-ffaudio audacious-plugins-freeworld-mp3</pre> <h3>Banshee</h3><p>Banshee allows you to import CDs, sync your music collection to an iPod, play music directly from an iPod, create playlists with songs from your library, and create audio and MP3 CDs from subsets of your library.</p><pre>yum install banshee banshee-community-extensions</pre><h3>Xmms</h3><p>XMMS is a multimedia (Ogg Vorbis, CDs) player for the X Window System with an interface similar to Winamp's. XMMS supports playlists and streaming content and has a configurable interface.</p><pre>yum install xmms xmms-mp3</pre><div class="ezAdsense adsense adsense-midtext" style="float:left;margin:12px;"><ins style="display:inline-table;border:none;height:250px;margin:0;padding:0;position:relative;visibility:visible;width:300px"><ins id="aswift_2_anchor" style="display:block;border:none;height:250px;margin:0;padding:0;position:relative;visibility:visible;width:300px"></ins></ins></div> <p><strong>Amarok</strong></p><p>Amarok is a multimedia player with:</p><ul><li><strong>fresh playlist concept, very fast to use, with drag and drop</strong></li><li><strong>plays all formats supported by the various engines</strong></li> <li><strong>audio effects, like reverb and compressor</strong></li><li><strong>compatible with the .m3u and .pls formats for playlists</strong></li><li><strong>nice GUI, integrates into the KDE look, but with a unique touch</strong></li> </ul><pre><span style="font-family: 'Courier New,courier';">yum install amarok phonon-backend-gstreamer</span></pre><p><strong>Exaile</strong></p><p>Exaile is similar to Amarok but it's based on GTK+ toolkit. Therefore it's a good solution for Gnome users! To install it type:</p> <pre><span style="font-family: 'Courier New,courier';">yum install exaile</span></pre><h2>Torrent Clients for Fedora 15</h2><h3>Transmission</h3><p>Transmission is a free, lightweight BitTorrent client. It features a simple, intuitive interface on top on an efficient, cross-platform back-end.</p><pre>yum install transmission</pre><h3>Azureus</h3><p>Azureus (now Vuze) implements the BitTorrent protocol using java and comes bundled with many invaluable features for both beginners and advanced users.</p><pre>yum install azureus</pre><h3>Ktorrent</h3><p>Ktorrent is a torrent client for KDE Users. If you install on Gnome only System. You have the overhead of KDE Libraries.</p><pre>yum install ktorrent</pre><h2>Nautilus Extensions for Fedora 15</h2> <h3>Nautilus Actions</h3><p>Nautilus actions is an extension for Nautilus, the GNOME file manager. It provides an easy way to configure programs to be launch on files selected in Nautilus interface</p><pre>yum install nautilus-actions</pre><h3>Nautilus Image Converter</h3><p>Adds a "Resize Images…" menu item to the context menu of all images. This opens a dialog where you set the desired image size and file name. A click on "Resize" finally resizes the image(s) using ImageMagick's convert tool.</p><pre>yum install nautilus-image-converter</pre><h3>Nautilus Open Terminal</h3><p>The nautilus-open-terminal extension provides a right-click "Open Terminal" option for nautilus users who prefer that option.</p> <pre>yum install nautilus-open-terminal</pre><h3>Nautilus Paste Bin</h3><p>A Nautilus extension written in Python, which allows users to upload text-only files to a pastebin service just by right-clicking on them. Users can also add their favorite service just by creating new presets.</p><pre>yum install nautilus-pastebin</pre><h2>Tools for Fedora 15</h2><p>Here we are installing some usefull tools for various purpose.</p><h3>Unrar</h3> <p>The unrar utility is a freeware program for extracting, testing and viewing the contents of archives created with the RAR archiver version 1.50 and above.</p><pre>yum install unrar</pre><h3>7Zip</h3><p>p7zip is a port of 7za.exe for Unix. 7-Zip is a file archiver with a very high compression ratio. The original version can be found at <a href="http://www.7-zip.org/">http://www.7-zip.org/</a>.</p><pre>yum install p7zip p7zip-plugins</pre><h2>gftp</h2><p>gFTP is a multi-threaded FTP client for the X Window System. gFTP supports simultaneous downloads, resumption of interrupted file transfers, file transfer queues to allow downloading of multiple files, support for downloading entire directories/subdirectories, a bookmarks menu to allow quick connection to FTP sites, caching of remote directory listings, local and remote chmod, drag and drop, a connection manager and much more</p><pre>yum install gftp</pre><h3>Filezilla</h3><p>FileZilla is a FTP, FTPS and SFTP client for Linux with a lot of features.</p><p>* Supports FTP, FTP over SSL/TLS (FTPS) and SSH File Transfer Protocol (SFTP)</p><p> * Cross-platform</p><p>* Available in many languages</p><p>* Supports resume and transfer of large files >4GB</p><p>* Easy to use Site Manager and transfer queue</p><p>* Drag & drop support</p><p>* Speed limits</p> <p>* Filename filters</p><p>* Network configuration wizard</p><p><br class="spacer_"></p><pre>yum install filezilla</pre><p><br class="spacer_"></p><h3>gnochm</h3><p>A CHM file viewer for Gnome. Features are:</p><p>* Full text search * Bookmarks * Support for external ms-its links * Configurable support for http links * Internationalisation * Displays HTML page source</p><p><br class="spacer_"></p><pre>yum install gnochm</pre><p><br class="spacer_"></p><h3>gtkpod</h3><p><br class="spacer_"></p><p>gtkpod is a platform independent Graphical User Interface for Apple's iPod using GTK2. It supports all current iPod models, including the Mini, Photo, Shuffle, Nano, Video, Classic, Touch, and iPhone.</p><p><br class="spacer_"></p><pre>yum install gtkpod</pre><p><br class="spacer_"></p><h2>Java Installation for Fedora 15</h2><p><br class="spacer_"></p><p>Download <a target="_blank" title="Java JDK on Fedora 14" href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Sun/Oracle Java JDK or JRE</a></p> <p><br class="spacer_"></p><p><strong>Select rpm.bin package (example jdk-6u22-linux-i586-rpm.bin, jre-6u22-linux-i586-rpm.bin, jdk-6u22-linux-x64-rpm.bin or jre-6u22-linux-x64-rpm.bin)</strong></p><p><br class="spacer_"></p><h3>Run Sun/Oracle Java JDK binary</h3><p><br class="spacer_"></p><pre>chmod +x /path/to/file/jdk-6u22-linux-*-rpm.bin</pre><pre>/path/to/binary/jdk-6u22-linux-*-rpm.bin</pre> <pre><br class="spacer_"></pre><pre>## OR ##</pre><pre><br class="spacer_"></pre><pre>sh /path/to/binary/jdk-6u22-linux-*-rpm.bin</pre><p><br class="spacer_"></p><p>Use full file name (without asterix) if you have both i586 and x64 versions downloaded.</p> <p><br class="spacer_"></p><h3>Run Sun/Oracle Java JRE binary</h3><p><br class="spacer_"></p><pre>chmod +x /path/to/file/jre-6u22-linux-*-rpm.bin</pre><pre>/path/to/binary/jre-6u22-linux-*-rpm.bin</pre><pre><br class="spacer_"> </pre><pre>## OR ##</pre><pre><br class="spacer_"></pre><pre>sh /path/to/binary/jre-6u22-linux-*-rpm.bin</pre><p><br class="spacer_"></p><p>Use full file name (without asterix) if you have both i586 and x64 versions downloaded.</p> <p><br class="spacer_"></p><h2>Programming IDEs for Fedora 15</h2><p><br class="spacer_"></p><h3>Netbeans</h3><p><br class="spacer_"></p><p>NetBeans IDE is an Integrated Development Environment (IDE) for Java/JavaFX, C/C++, Ruby, UML, etc. The NetBeans IDE is oriented on wide audience of developers from beginners up to experts.</p><p><br class="spacer_"></p><pre>yum install netbeans</pre><p><br class="spacer_"></p><p>Eclipse – it is a good IDE for fedora</p><p><br class="spacer_"></p><p>IDEs for Web Programming Like HTML,CSS,Javascript,PHP,Ruby etc …</p> <p><br class="spacer_"></p><h3>Geany</h3><p><br class="spacer_"></p><p>Geany is a small and fast integrated development enviroment with basic features and few dependencies to other packages or Desktop Environments.</p><p>Some features:</p><p>* Syntax highlighting</p><p>* Code completion</p><p>* Code folding</p><p>* Construct completion/snippets</p><p>* Auto-closing of XML and HTML tags</p> <p>* Call tips</p><p>* Support for Many languages like C, Java, PHP, HTML, Python, Perl, Pascal</p><p>* symbol lists and symbol name auto-completion</p><p>* Code navigation</p><p>* Simple project management</p><p>* Plugin interface</p> <p><br class="spacer_"></p><pre>yum install geany</pre><p><br class="spacer_"></p><h3>Bluefish</h3><p><br class="spacer_"></p><p>Bluefish is a powerful editor for experienced web designers and programmers. Bluefish supports many programming and markup languages, but it focuses on editing dynamic and interactive websites.</p><p><br class="spacer_"></p><pre>yum install bluefish</pre><p><br class="spacer_"></p><h3>Cssed</h3><p><br class="spacer_"></p><p>cssed is a small developer editor and validator, that tries to ease the CSS editing.</p> <p>It features syntax highlighting, syntax validation, MDI notebook based interface, quick CSS properties and values insertion, auto-completion and dialog-based insertion of CSS complex values.</p><p>Being a CSS editor, it's not limited to this language. cssed haved some support for HTML (with embbeded Javascript), XML, Javascript, Java, PHP, JSP, C, C++, Apache configuration files, .htaccess, Python, Perl, SQL, SH and other languages so it can serve quite well as multi-purpose editor.</p><p><br class="spacer_"></p><pre>yum install cssed</pre><p><br class="spacer_"></p><h3>Anjuta</h3><p><br class="spacer_"></p><p>Anjuta DevStudio is a versatile Integrated Development Environment (IDE) on GNOME Desktop Environment and features a number of advanced programming facilities. These include project management, application and class wizards, an on-board interactive debugger, powerful source editor, syntax highlighting, intelligent auto-completions, symbol navigation, version controls, integrated GUI designing and other tools.</p><p><br class="spacer_"></p><pre>yum install anjuta</pre><p><br class="spacer_"></p><p>For install the complete software packages a good internet connection is advicable. Beacuse about 800MB of packages are downloaded from internet. after install all these you will get a stable desktop for all development environments . Also virus/ Sparm free internet browsing is a big advantage. Selinux will take care of all security problems in fedora. Another guide <a target="_blank" title="Fedora 14 Post Install guide" href="http://www.hackourlives.com/perfect-desktop-fedora-14-laughlin-post-install-guide/">Here</a>.</p><p><br class="spacer_"></p><p>Just install and Feel the Freedom ………… Have Fun ……….!!!!!!!!</p> <div class="title"><h2><a href="http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/" rel="bookmark" title="Permanent Link to Fedora 15 Post Installation Guide for Perfect Desktop">Fedora 15 Post Installation Guide for Perfect Desktop</a></h2> <span class="author"> Posted by ranjith siji</span> <span class="comm"><a href="http://ranjith.zfs.in/fedora-15-post-installation-guide-to-enable-extra-features/#comments" rel="nofollow" title="Comment on Fedora 15 Post Installation Guide for Perfect Desktop"><span class="dsq-postid" rel="1406 http://ranjith.zfs.in/?p=1406">5 Comments</span></a></span></div> <div class="ezAdsense adsense adsense-leadin" style="text-align:center;margin:12px;"><ins style="display:inline-table;border:none;height:280px;margin:0;padding:0;position:relative;visibility:visible;width:336px"><ins id="aswift_1_anchor" style="display:block;border:none;height:280px;margin:0;padding:0;position:relative;visibility:visible;width:336px"></ins></ins><div align="center"> <font size="-3"><a target="_blank" href="http://wordpress.org/extend/plugins/easy-adsenser/" title="The simplest way to put AdSense to work for you!"> Easy AdSense</a> by <a target="_blank" href="http://www.thulasidas.com/" title="Unreal Blog proudly brings you Easy AdSense">Unreal</a></font></div> </div><p><a href="http://ranjith.zfs.in/wp-content/uploads/2011/05/fedora15.jpg"><img class="aligncenter size-medium wp-image-1408" title="fedora15" src="http://ranjith.zfs.in/wp-content/uploads/2011/05/fedora15-300x225.jpg" alt="" height="225" width="300"></a><a href="http://ranjith.zfs.in/wp-content/uploads/2011/05/fedora151.jpg"><br> </a><a target="_blank" title="Fedora" href="http://fedoraproject.org/">Fedora</a> 15 is released with more great features. Above All gnome 3 Rocks…!!!. Fedora is the complete distribution with the full installation of a working copy of <a target="_blank" class="zem_slink" title="GNOME" rel="homepage" href="http://www.gnome.org/">gnome 3.0</a> and <a target="_blank" class="zem_slink" title="GNOME Shell" rel="homepage" href="http://live.gnome.org/GnomeShell">Gnome shell</a>. <a target="_blank" title="Ubuntu" href="http://ubuntu.com/">Ubuntu</a>'s Controversal movement away from gnome shell to unity started lot of discussions. But now its time for gnome to prove what they giving to the end user. The New features includes a completly updated gnome environment, the 2.6.38 kernal, KDE 4.6.0, XFCE 4.8 and <a target="_blank" class="zem_slink" title="LXDE" rel="homepage" href="http://lxde.org/">LXDE</a> desktop environments, <a target="_blank" class="zem_slink" title="Systemd" rel="homepage" href="http://freedesktop.org/wiki/Software/systemd">SystemD</a> etc.. . Fedora is a fully functional rock solid free software operationg system. So all the proprietory codes and softwares are omitted from the basic Fedora.</p><h2>Things to do after install fedora 15</h2><p>Things to do after install fedora 15 is a good quesiton always. For a Complete desktop for a user we need more softwares for MP3, DVD and Video playback/recording etc… For this reason you have to install that software from third party repositories. <a target="_blank" class="zem_slink" title="Fedora" rel="homepage" href="http://fedoraproject.org/">RPM Fusion</a> is a third party repository consists all of other softwares for better media support.</p> <h2>Gnome shell Tweaks for Fedora 15</h2><p>You need some tweaks for gnome shell to use in fedora 15. You can have the gnome-tweak-tool to tweak the settings, interface, fonts, themes etc..</p><p>Just install</p><pre>yum install gnome-tweak-tool</pre><h2>Dconf Editor for Fedora 15</h2><p>The dconf editor will help you to set various values in gnome shell. like enable the minimize, maximize buttons, show seconds in the clock etc..</p><p>—–</p><p>For the complete installation of gnome shell extensions in fedora 15 and more gnome shell themes, gtk 3 themes in fedora 15 just view the other post<a href="http://ranjith.zfs.in/gnome-shell-extensions-for-fedora-15-open-suse-11-4-arch-linux/"> gnome shell extensions in fedora 15</a>.</p><p>For GUI people just open the overlay mode in gnome or press window key. then type add then you will get add or remove programmes then go for a search.</p><p><strong>Open Terminal Applications > System Tools > Terminal. then su – for a <a target="_blank" class="zem_slink" title="Superuser" rel="wikipedia" href="http://en.wikipedia.org/wiki/Superuser">root user</a> . Enter your root password. All the commands are performed as root on the terminal otherwise just add su -c 'command' . </strong></p> <p>Prepare <a target="_blank" class="zem_slink" title="Yellowdog Updater, Modified" rel="homepage" href="http://yum.baseurl.org/">Yum</a> for Fast Installation in Fedora 15</p><p><span style="font-size: small;"><strong>* Fastest Mirror Plugin</strong></span></p> <pre><span style="font-family: 'Courier New,courier';">yum install yum-fastestmirror</span></pre><p>The fasterstmirror will find the fastest mirror near you and download with great speed.</p><h2>Enable Restricted Repositories in Fedora 15</h2> <p>To enable the RPM Fusion repository just install</p><pre>su -c 'yum localinstall --nogpgcheck <a href="http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm">http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm</a> <a href="http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm">http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm</a>'</pre><h2><a target="_blank" href="http://code.google.com/p/ailurus/">Ailurus</a> – The Complete Tweak tool like <a target="_blank" class="zem_slink" title="Ubuntu (operating system)" rel="homepage" href="http://www.ubuntu.com/">Ubuntu tweak</a></h2> <p> </p><div class="wp-caption alignleft" style="width: 138px"><img title="Ailurus" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8waf20PpsP26iXb1OJ2tDwR7duT09Pth5MLlDUp5v8eEw-D_I-tTpSgbRi9qxOn3x_KRbvrkxek8YEq8QrRJwjcp83xMDK41a5QAjX8xm46UabjLQ1zerT2VZubDSNWPT0nLpmtbYql77/s1600/128x128_IGl2O1.png" alt="Ailurus" height="128" width="128"><p class="wp-caption-text"> Gnome Tweak tool for Fedora 15</p></div><p>Ubuntu tweak is a great tool to tweak various settings in ubuntu. It is a third party software and helps users to set various configurations in ubuntu very easy. A tool like ubuntu tweak in fedora is a must need for a less terminal savy users or developers.</p><p> </p><p>Here is the answer Ailurus</p><p>Ailurus is cross-Linux-distribution GPL software. It is a simple application installer and <a target="_blank" class="zem_slink" title="GNOME" rel="homepage" href="http://www.gnome.org/">GNOME</a> tweaker, which aims at making GNOME easier to use.</p> <p><a target="_blank" href="http://code.google.com/p/ailurus/downloads/list">Download this great tool</a> from google code project. You will get rpm for fedora 14 but it is working amazing on fedora 15</p><h2>Install <a target="_blank" class="zem_slink" title="Adobe Acrobat" rel="homepage" href="http://adobe.com/acrobat">Adobe Acrobat Reader</a> in Fedora 15</h2> <p>Next we add the adobe repository for downloading Acrobat Reader, by running this at the terminal</p><pre><code>rpm -Uvh <a href="http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm">http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm</a></code></pre> <pre><code>rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux</code></pre><pre><code>yum install AdobeReader_enu</code></pre><p>Just Start the Acrobat Reader from Applicaitons > office > Acrobat reader.</p><h2>Internet Applicaitons for fedora 15</h2> <p>The firefox 4.0.1 is the default browser in fedora 15. But Chrome is a better alternative. You can add the repository and install google chrome on fedora 15 very easly.</p><h3>Installing <a target="_blank" class="zem_slink" title="Google" rel="homepage" href="http://google.com/">Google</a> chrome in Fedora 15</h3><p>To add the google repository edit the file.</p> <p><code>gedit /etc/yum.repos.d/google.repo</code></p><p>for 32 bit OS Version</p><p><span style="font-family: 'monospace'; color: #7a0874;"><strong>[</strong></span><span style="font-family: 'monospace';">google</span><span style="font-family: 'monospace'; color: #7a0874;"><strong>]</strong></span></p> <pre><span style="color: #007800;">name</span>=Google - i386ff</pre><pre><span style="color: #007800;">baseurl</span>=http:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl.google.com">dl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>rpm<span style="color: #000000;"><strong>/</strong></span>stable<span style="color: #000000;"><strong>/</strong></span>i386</pre> <pre><span style="color: #007800;">enabled</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgcheck</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgkey</span>=https:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl-ssl.google.com">dl-ssl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>linux_signing_key.pub</pre> <p>for 64-bit OS Version</p><pre><span style="color: #7a0874;"><strong>[</strong></span>google64<span style="color: #7a0874;"><strong>]</strong></span></pre><pre><span style="color: #007800;">name</span>=Google - x86_64</pre> <pre><span style="color: #007800;">baseurl</span>=http:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl.google.com">dl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>rpm<span style="color: #000000;"><strong>/</strong></span>stable<span style="color: #000000;"><strong>/</strong></span>x86_64</pre> <pre><span style="color: #007800;">enabled</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgcheck</span>=<span style="color: #000000;">1</span></pre><pre><span style="color: #007800;">gpgkey</span>=https:<span style="color: #000000;"><strong>//</strong></span><a href="http://dl-ssl.google.com">dl-ssl.google.com</a><span style="color: #000000;"><strong>/</strong></span>linux<span style="color: #000000;"><strong>/</strong></span>linux_signing_key.pub</pre> <h3>Install <a target="_blank" class="zem_slink" title="Google Chrome" rel="homepage" href="http://www.google.com/chrome">Google Chrome</a> Stable Version on Fedora 15</h3><p>Just type this line on the root terminal</p><p> <code>yum install google-chrome-stable</code></p><p><code> </code></p><p> </p><p>Or You can download the google chrome browser from <a target="_blank" href="http://www.google.com/chrome/eula.html">chrome website</a>. Download the rpm file</p> <p>to install you need the dependency lsb</p><p>to install that</p><pre>yum install redhat-lsb</pre><p>Then try to install the downloaded rpm by just double click on it or in terminal</p><pre>rpm -ivh google-chrome-stable_current.rpm</pre> <h3>Install Opera on Fedora 15</h3><p>You can download <a target="_blank" class="zem_slink" title="Opera (web browser)" rel="wikipedia" href="http://en.wikipedia.org/wiki/Opera_%28web_browser%29">Opera browser</a> from <a target="_blank" title="Opera on Fedora 14" href="http://www.opera.com/browser/download/">opera's Official Webiste</a>. Opera is the most advanced browser with HTML 5 and <a target="_blank" class="zem_slink" title="Cascading Style Sheets" rel="wikipedia" href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets">CSS 3</a> support.</p> <p>Just double click on the rpm will install the browser without a hazile.</p><h3>Install Pidgin on Fedora 15</h3><p>Pidgin is an alternative for the default empathy IM Client. Some times it works better with webcams.</p> <pre>yum install pidgin</pre><h3>Install Google talk Plugin in Fedora 15</h3><p>Just download the rpm from Google Talk Website and install it. Download from <a target="_blank" title="Google Talk Plugin for Fedora 14" href="http://www.google.com/chat/video/download.html">http://www.google.com/chat/video/download.html . </a></p> <p>Just double click on the rpm on the downloads. Type the root password. It will automatically install.</p><h3>Install skype on Fedora 15</h3><p>Skype is a good <a target="_blank" class="zem_slink" title="Instant messaging" rel="wikipedia" href="http://en.wikipedia.org/wiki/Instant_messaging">IM client</a> for all operating system. You can chat, Video and Audio call with unmatched voice clarity and video quality over internet.</p> <p>Just download from <a target="_blank" title="Skype for Fedora 14" href="http://www.skype.com/go/getskype-linux-beta-fc10">skype website.</a></p><p>Just double click on the rpm. It will install automatically.</p><h3>Install Google talk on Fedora 15</h3> <p>The google talk plugin will help you to call your friends from gmail interface. It now supports video calling. You can download <a target="_blank" href="http://www.google.com/chat/video/download.html">this plugin from google website</a></p> <h3>Install Gwibber on Fedora 15</h3><p>Gwibber is a universal Broadcast Client for twitter, <a href="http://identi.ca">identi.ca</a>, Buzz, Flickr, FriendsFeed, Facebook, Ping.fm, Qwaiku etc.. It is the default Broadcast client on Ubuntu. Installation is simple.</p><pre>yum install gwibber</pre><h3>Install Google Earth on Fedora 15</h3><p>The most advanced map software from google. You can search and find lot more . <a target="_blank" title="Google Earth on Fedora 14" href="http://www.google.com/earth/download/ge/agree.html">Just download the bin file</a> and execute it.</p> <p>./GoogleEarthLinx.bin</p><h3>Flash Player Plugin for fedora 15</h3><pre>yum install flash-plugin</pre><p><span style="font-size: x-large;"><strong>Graphics Appications for fedora 15</strong></span></p><h3>Gimp</h3><p> the most advanced Image Editor in Linux. The latest Coming Version will have great features. This is included in the default package. If not just install</p><pre>yum install gimp</pre><h3>Inkscape</h3><p>The best vector editor application in free software. Good for creating svg files.</p><pre>yum install inkscape</pre><h3>Google Picasa</h3><p>picasa application for organizing and editing digital photos. You can download picasa from google.</p> <p><span style="font-size: small;">rpm, for Red Hat/Fedora/Suse/Mandriva i386 or x86_64:<br> </span><a target="_blank" href="http://dl.google.com/linux/rpm/testing/i386/picasa-3.0-current.i386.rpm"><span style="font-size: small;">http://dl.google.com/linux/rpm/testing/i386/picasa-3.0-current.i386.rpm</span></a></p> <h3>Xara Xtreme</h3><p>Xara is a powerful, general purpose graphics program for Unix platforms including Linux, FreeBSD and (in development) OS-X.</p><p><strong>» </strong><a target="_blank" href="http://downloads.xara.com/opensource/RecXaraLX0.7_rev1692.package"><strong>Download Xara Xtreme (version 0.7 Revision 1692)</strong></a> (Autopackage Archive – 19MB)</p> <p><a target="_blank" title="Xara Software" href="http://www.xaraxtreme.org/download.html">Detailed Installation Instructions</a> here.</p><p>Phatch</p><p>Phatch is a simple to use cross-platform GUI Photo Batch Processor which handles all popular image formats and can duplicate (sub)folder hierarchies. Phatch can batch re-size, rotate, apply perspective, shadows, rounded corners, … and more in minutes instead of hours or days if you do it manually. Phatch allows you to use EXIF and IPTC tags for renaming and data stamping. Phatch also supports a console version to batch photos on web-servers.</p><pre>yum install phatch nautilus-phatch</pre><h2><span style="font-size: x-large;"><strong>Office Applications for Fedora 15</strong></span></h2><h3>Libreoffice is the official office package for Fedora 15</h3> <p>The total libreoffice package is available on the DVD package. You can install <a href="http://openoffice.org">openoffice.org</a> seperatly.</p><h3>Libre Office 3.3.0 on Fedora 15</h3><p>LibreOffice is a productivity suite that is compatible with other major office suites, and available on a variety of platforms. It is the clone of Openoffice.org from document foundation. Lot of improvements and bug fixes from <a href="http://openoffice.org">openoffice.org</a> done by the libreoffice team. Also other distros are supporting this office suite.</p><p>Download : <a target="_blank" href="http://www.libreoffice.org/download/">Libreoffice</a></p><p>Extract the file and install</p><p>rpm -ivh RPMS/*.rpm</p><h3>Scribus on fedora 15</h3> <p>Scribus is an desktop open source page layout program with the aim of producing commercial grade output in PDF and Postscript, primarily, though not exclusively for Linux.While the goals of the program are for ease of use and simple easy to understand tools, Scribus offers support for professional publishing features, such as CMYK color, easy PDF creation, Encapsulated Postscript import/export and creation of color separations.</p><pre>yum install scribus</pre><h2>Video Codecs for Fedora 15</h2><p>To play various Video formats we need some codecs.</p><h3>Gstreamer</h3><pre>yum install gstreamer gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly</pre> <h3>FFMpeg</h3><p>FFMpeg is a complete and free Internet live audio and video broadcasting solution for Linux/Unix. It also includes a digital VCR. It can encode in real time in many formats including MPEG1 audio and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.</p><pre>yum install ffmpeg ffmpeg-libs</pre><h3>K3b MP3 decoder plugin</h3><p>When you start k3b it says no mp3 decoder plugin. to install</p><pre>yum install k3b-extras-freeworld</pre> <h2>DVD and Video Players for Fedora 15</h2><p><strong>DVD playback </strong></p><p>In order to play DVDs you must install the appropriate codecs.</p><pre>yum install libdvdread libdvdnav lsdvd</pre><p>you can use Livna for installing libdvdcss.</p> <pre>su -</pre><pre>rpm -Uvh <a href="http://rpm.livna.org/livna-release.rpm">http://rpm.livna.org/livna-release.rpm</a></pre><pre>yum install libdvdcss</pre><h3>VLC</h3><p>VLC media player is a highly portable multimedia player and multimedia framework capable of reading most audio and video formats as well as DVDs, Audio CDs VCDs, and various streaming protocols. It can also be used as a media converter or a server to stream in uni-cast or multi-cast in IPv4 or IPv6 on networks.</p><pre>yum install vlc</pre><h3>Mplayer / SMplayer / Gnome Mplayer</h3><p>MPlayer is a movie player that plays most MPEG, VOB, AVI, OGG/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ, and PVA files. You can also use it to watch VCDs, SVCDs, DVDs, 3ivx, RealMedia, and DivX movies. It supports a wide range of output drivers including X11, XVideo, DGA, OpenGL, SVGAlib, fbdev, AAlib, DirectFB etc. There are also nice antialiased shaded subtitles and OSD.</p><pre>yum install mplayer mplayer-gui smplayer gnome-mplayer</pre><h3>Kaffeine</h3><p>Kaffeine is KDE Mediaplayer with xine engine.</p><pre>yum install kaffeine</pre> <h3>Avidemux</h3><p>Avidemux is a very good video editor. Install it like this</p><p><br class="spacer_"></p><pre>yum install avidemux</pre><p><br class="spacer_"></p><h2>Mp3 and Audio Players for Fedora 15.</h2><h3>Audacity</h3> <p>Audacity is a cross-platform multitrack audio editor. It allows you to record sounds directly or to import files in various formats. It features a few simple effects, all of the editing features you should need, and unlimited undo. The GUI was built with wxWidgets and the audio I/O supports PulseAudio, OSS and ALSA under Linux. This</p><p>build has support for mp3 and ffmpeg import/export.</p><pre>yum install audacity</pre><p>Or you can install Audacity with mp3 export support.</p><pre>yum install audacity-freeworld</pre> <h3>Audacious</h3><p>Audacious is a media player that currently uses a skinned user interface (based on Winamp 2.x skins) as well as a separate GTK2 based front end. Historically, it started as a fork of Beep Media Player (BMP), which itself forked from XMMS.</p><pre>yum install audacious audacious-libs audacious-plugins audacious-plugins-freeworld audacious-plugins-freeworld-aac audacious-plugins-freeworld-ffaudio audacious-plugins-freeworld-mp3</pre> <h3>Banshee</h3><p>Banshee allows you to import CDs, sync your music collection to an iPod, play music directly from an iPod, create playlists with songs from your library, and create audio and MP3 CDs from subsets of your library.</p><pre>yum install banshee banshee-community-extensions</pre><h3>Xmms</h3><p>XMMS is a multimedia (Ogg Vorbis, CDs) player for the X Window System with an interface similar to Winamp's. XMMS supports playlists and streaming content and has a configurable interface.</p><pre>yum install xmms xmms-mp3</pre><div class="ezAdsense adsense adsense-midtext" style="float:left;margin:12px;"><ins style="display:inline-table;border:none;height:250px;margin:0;padding:0;position:relative;visibility:visible;width:300px"><ins id="aswift_2_anchor" style="display:block;border:none;height:250px;margin:0;padding:0;position:relative;visibility:visible;width:300px"></ins></ins></div> <p><strong>Amarok</strong></p><p>Amarok is a multimedia player with:</p><ul><li><strong>fresh playlist concept, very fast to use, with drag and drop</strong></li><li><strong>plays all formats supported by the various engines</strong></li> <li><strong>audio effects, like reverb and compressor</strong></li><li><strong>compatible with the .m3u and .pls formats for playlists</strong></li><li><strong>nice GUI, integrates into the KDE look, but with a unique touch</strong></li> </ul><pre><span style="font-family: 'Courier New,courier';">yum install amarok phonon-backend-gstreamer</span></pre><p><strong>Exaile</strong></p><p>Exaile is similar to Amarok but it's based on GTK+ toolkit. Therefore it's a good solution for Gnome users! To install it type:</p> <pre><span style="font-family: 'Courier New,courier';">yum install exaile</span></pre><h2>Torrent Clients for Fedora 15</h2><h3>Transmission</h3><p>Transmission is a free, lightweight BitTorrent client. It features a simple, intuitive interface on top on an efficient, cross-platform back-end.</p><pre>yum install transmission</pre><h3>Azureus</h3><p>Azureus (now Vuze) implements the BitTorrent protocol using java and comes bundled with many invaluable features for both beginners and advanced users.</p><pre>yum install azureus</pre><h3>Ktorrent</h3><p>Ktorrent is a torrent client for KDE Users. If you install on Gnome only System. You have the overhead of KDE Libraries.</p><pre>yum install ktorrent</pre><h2>Nautilus Extensions for Fedora 15</h2> <h3>Nautilus Actions</h3><p>Nautilus actions is an extension for Nautilus, the GNOME file manager. It provides an easy way to configure programs to be launch on files selected in Nautilus interface</p><pre>yum install nautilus-actions</pre><h3>Nautilus Image Converter</h3><p>Adds a "Resize Images…" menu item to the context menu of all images. This opens a dialog where you set the desired image size and file name. A click on "Resize" finally resizes the image(s) using ImageMagick's convert tool.</p><pre>yum install nautilus-image-converter</pre><h3>Nautilus Open Terminal</h3><p>The nautilus-open-terminal extension provides a right-click "Open Terminal" option for nautilus users who prefer that option.</p> <pre>yum install nautilus-open-terminal</pre><h3>Nautilus Paste Bin</h3><p>A Nautilus extension written in Python, which allows users to upload text-only files to a pastebin service just by right-clicking on them. Users can also add their favorite service just by creating new presets.</p><pre>yum install nautilus-pastebin</pre><h2>Tools for Fedora 15</h2><p>Here we are installing some usefull tools for various purpose.</p><h3>Unrar</h3> <p>The unrar utility is a freeware program for extracting, testing and viewing the contents of archives created with the RAR archiver version 1.50 and above.</p><pre>yum install unrar</pre><h3>7Zip</h3><p>p7zip is a port of 7za.exe for Unix. 7-Zip is a file archiver with a very high compression ratio. The original version can be found at <a href="http://www.7-zip.org/">http://www.7-zip.org/</a>.</p><pre>yum install p7zip p7zip-plugins</pre><h2>gftp</h2><p>gFTP is a multi-threaded FTP client for the X Window System. gFTP supports simultaneous downloads, resumption of interrupted file transfers, file transfer queues to allow downloading of multiple files, support for downloading entire directories/subdirectories, a bookmarks menu to allow quick connection to FTP sites, caching of remote directory listings, local and remote chmod, drag and drop, a connection manager and much more</p><pre>yum install gftp</pre><h3>Filezilla</h3><p>FileZilla is a FTP, FTPS and SFTP client for Linux with a lot of features.</p><p>* Supports FTP, FTP over SSL/TLS (FTPS) and SSH File Transfer Protocol (SFTP)</p><p> * Cross-platform</p><p>* Available in many languages</p><p>* Supports resume and transfer of large files >4GB</p><p>* Easy to use Site Manager and transfer queue</p><p>* Drag & drop support</p><p>* Speed limits</p> <p>* Filename filters</p><p>* Network configuration wizard</p><p><br class="spacer_"></p><pre>yum install filezilla</pre><p><br class="spacer_"></p><h3>gnochm</h3><p>A CHM file viewer for Gnome. Features are:</p><p>* Full text search * Bookmarks * Support for external ms-its links * Configurable support for http links * Internationalisation * Displays HTML page source</p><p><br class="spacer_"></p><pre>yum install gnochm</pre><p><br class="spacer_"></p><h3>gtkpod</h3><p><br class="spacer_"></p><p>gtkpod is a platform independent Graphical User Interface for Apple's iPod using GTK2. It supports all current iPod models, including the Mini, Photo, Shuffle, Nano, Video, Classic, Touch, and iPhone.</p><p><br class="spacer_"></p><pre>yum install gtkpod</pre><p><br class="spacer_"></p><h2>Java Installation for Fedora 15</h2><p><br class="spacer_"></p><p>Download <a target="_blank" title="Java JDK on Fedora 14" href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Sun/Oracle Java JDK or JRE</a></p> <p><br class="spacer_"></p><p><strong>Select rpm.bin package (example jdk-6u22-linux-i586-rpm.bin, jre-6u22-linux-i586-rpm.bin, jdk-6u22-linux-x64-rpm.bin or jre-6u22-linux-x64-rpm.bin)</strong></p><p><br class="spacer_"></p><h3>Run Sun/Oracle Java JDK binary</h3><p><br class="spacer_"></p><pre>chmod +x /path/to/file/jdk-6u22-linux-*-rpm.bin</pre><pre>/path/to/binary/jdk-6u22-linux-*-rpm.bin</pre> <pre><br class="spacer_"></pre><pre>## OR ##</pre><pre><br class="spacer_"></pre><pre>sh /path/to/binary/jdk-6u22-linux-*-rpm.bin</pre><p><br class="spacer_"></p><p>Use full file name (without asterix) if you have both i586 and x64 versions downloaded.</p> <p><br class="spacer_"></p><h3>Run Sun/Oracle Java JRE binary</h3><p><br class="spacer_"></p><pre>chmod +x /path/to/file/jre-6u22-linux-*-rpm.bin</pre><pre>/path/to/binary/jre-6u22-linux-*-rpm.bin</pre><pre><br class="spacer_"> </pre><pre>## OR ##</pre><pre><br class="spacer_"></pre><pre>sh /path/to/binary/jre-6u22-linux-*-rpm.bin</pre><p><br class="spacer_"></p><p>Use full file name (without asterix) if you have both i586 and x64 versions downloaded.</p> <p><br class="spacer_"></p><h2>Programming IDEs for Fedora 15</h2><p><br class="spacer_"></p><h3>Netbeans</h3><p><br class="spacer_"></p><p>NetBeans IDE is an Integrated Development Environment (IDE) for Java/JavaFX, C/C++, Ruby, UML, etc. The NetBeans IDE is oriented on wide audience of developers from beginners up to experts.</p><p><br class="spacer_"></p><pre>yum install netbeans</pre><p><br class="spacer_"></p><p>Eclipse – it is a good IDE for fedora</p><p><br class="spacer_"></p><p>IDEs for Web Programming Like HTML,CSS,Javascript,PHP,Ruby etc …</p> <p><br class="spacer_"></p><h3>Geany</h3><p><br class="spacer_"></p><p>Geany is a small and fast integrated development enviroment with basic features and few dependencies to other packages or Desktop Environments.</p><p>Some features:</p><p>* Syntax highlighting</p><p>* Code completion</p><p>* Code folding</p><p>* Construct completion/snippets</p><p>* Auto-closing of XML and HTML tags</p> <p>* Call tips</p><p>* Support for Many languages like C, Java, PHP, HTML, Python, Perl, Pascal</p><p>* symbol lists and symbol name auto-completion</p><p>* Code navigation</p><p>* Simple project management</p><p>* Plugin interface</p> <p><br class="spacer_"></p><pre>yum install geany</pre><p><br class="spacer_"></p><h3>Bluefish</h3><p><br class="spacer_"></p><p>Bluefish is a powerful editor for experienced web designers and programmers. Bluefish supports many programming and markup languages, but it focuses on editing dynamic and interactive websites.</p><p><br class="spacer_"></p><pre>yum install bluefish</pre><p><br class="spacer_"></p><h3>Cssed</h3><p><br class="spacer_"></p><p>cssed is a small developer editor and validator, that tries to ease the CSS editing.</p> <p>It features syntax highlighting, syntax validation, MDI notebook based interface, quick CSS properties and values insertion, auto-completion and dialog-based insertion of CSS complex values.</p><p>Being a CSS editor, it's not limited to this language. cssed haved some support for HTML (with embbeded Javascript), XML, Javascript, Java, PHP, JSP, C, C++, Apache configuration files, .htaccess, Python, Perl, SQL, SH and other languages so it can serve quite well as multi-purpose editor.</p><p><br class="spacer_"></p><pre>yum install cssed</pre><p><br class="spacer_"></p><h3>Anjuta</h3><p><br class="spacer_"></p><p>Anjuta DevStudio is a versatile Integrated Development Environment (IDE) on GNOME Desktop Environment and features a number of advanced programming facilities. These include project management, application and class wizards, an on-board interactive debugger, powerful source editor, syntax highlighting, intelligent auto-completions, symbol navigation, version controls, integrated GUI designing and other tools.</p><p><br class="spacer_"></p><pre>yum install anjuta</pre><p><br class="spacer_"></p><p>For install the complete software packages a good internet connection is advicable. Beacuse about 800MB of packages are downloaded from internet. after install all these you will get a stable desktop for all development environments . Also virus/ Sparm free internet browsing is a big advantage. Selinux will take care of all security problems in fedora. Another guide <a target="_blank" title="Fedora 14 Post Install guide" href="http://www.hackourlives.com/perfect-desktop-fedora-14-laughlin-post-install-guide/">Here</a>.</p><p><br class="spacer_"></p><p>Just install and Feel the Freedom ………… Have Fun ……….!!!!!!!!</p> Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-40416918455557195012011-07-20T08:57:00.001-04:002011-07-20T08:57:59.251-04:00[一种声音]大陆未公开的《宋美龄致廖承志公开信》<span class="Apple-style-span" style="font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; font-size: 12px; "><table border="0" cellspacing="0" cellpadding="0" width="90%" style="table-layout: fixed; "><tbody><tr><td class="oblog_t_4" style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(221, 221, 221); "> <p><span class="style1" style="font-size: 14px; font-weight: bold; color: rgb(102, 102, 102); "><font size="3"><img src="http://www.dapenti.com/blog/images/face/5.gif" style="border-right-width: 0px; border-right-style: initial; border-right-color: initial; border-top-width: 0px; border-top-style: initial; border-top-color: initial; border-left-width: 0px; border-left-style: initial; border-left-color: initial; border-bottom-width: 0px; border-bottom-style: initial; border-bottom-color: initial; "><a href="http://www.dapenti.com/blog/blog.asp?name=xilei&subjectid=64" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">[一种声音]</a><a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46453" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">大陆未公开的《宋美龄致廖承志公开信》</a></font></span></p> </td></tr><tr><td style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); "><table border="0" cellspacing="0" cellpadding="0" width="100%"><tbody><tr><td style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); "> <div align="right"><span class="oblog_text" style="font-size: 14px; line-height: 22px; ">xilei 发布于 2011-7-14 20:51:00</span></div></td></tr></tbody></table><br><br><span style="float: right; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 20px; "> </div></span><br><span class="oblog_text" style="font-size: 14px; line-height: 22px; "><p></p><p>● 颜昌海 </p><p> 1982年,全国人大副委员长廖承志写了一封公开信给蒋经国,当时大陆官媒很是熙熙攘攘了一番,被称为“廖公不计前嫌,虚怀若谷,令万民仰慕,赞誉不绝,而致蒋信亦成为中共开拓和平统一大道的一座辉煌的里程碑。从写作角度评价,致蒋信堪称上品佳作。析事论理、表情达意、布局用语及格式规范等皆恰到好处,令人叹服。”但后文如何,就没有人提了。事实上,当时的蒋夫人宋美龄也是回了一封公开信给廖承志的,但内容实在太尖锐了,大陆也就只好装作不知道了。</p> <p><strong>1982年7月24日“廖承志致蒋经国先生信”:</strong></p><p> 经国吾弟:</p><p> 咫尺之隔,竟成海天之遥。南京匆匆一晤,瞬逾三十六载。幼时同袍,苏京把晤,往事历历在目。惟长年未通音问,此诚憾事。近闻政躬违和,深为悬念。人过七旬,多有病痛。</p><p> 至盼善自珍摄。</p><p> 三年以来,我党一再倡议贵我两党举行谈判,同捐前嫌,共竟祖国统一大业。惟弟一再声言“不接触,不谈判,不妥协”,余期期以为不可。世交深情,于公于私,理当进言,敬希诠察。</p> <p> 祖国和平统一,乃千秋功业,台湾终必回归祖国,早日解决对各方有利。台湾同胞可安居乐业,两岸各族人民可解骨肉分离之痛,在台诸前辈及大陆去台人员亦可各得其所,且有利于亚太地区局势稳定和世界和平。吾弟尝以“计利当计天下利,求名应求万世名”自勉,倘能于吾弟手中成此伟业,必为举国尊敬,世人推崇,功在国家,名留青史。所谓“罪人”之说,实相悖谬。局促东隅,终非久计。明若吾弟,自当了然。如迁延不决,或委之异日,不仅徒生困扰,吾弟亦将难辞其咎。再者,和平统一纯属内政。外人巧言令色,意在图我台湾,此世人所共知者。当断不断,必受其乱。愿弟慎思。</p> <p> 孙先生手创之中国国民党,历尽艰辛,无数先烈前仆后继,终于推翻帝制,建立民国。光辉业迹,已成定论。国共两度合作,均对国家民族作出巨大贡献。首次合作,孙先生领导,吾辈虽幼,亦知一二。再次合作,老先生主其事,吾辈身在其中,应知梗概。事虽经纬万端,但纵观全局,合则对国家有利,分则必伤民族元气。今日吾弟在台主政,三次合作,大责难谢。双方领导,同窗挚友,彼此相知,谈之更易。所谓“投降”、“屈事”、“吃亏”、“上当”之说,实难苟同。评价历史,展望未来,应天下为公,以国家民族利益为最高准则,何发党私之论!至于“以三民主义统一中国”云云,识者皆以为太不现实,未免自欺欺人。三民主义之真谛,吾辈深知,毋须争辩。所谓台湾“经济繁荣,社会民主,民生乐利”等等,在台诸公,心中有数,亦毋庸赘言。试为贵党计,如能依时顺势,负起历史责任,毅然和谈,达成国家统一,则两党长期共存,互相监督,共图振兴中华之大业。否则,偏安之局,焉能自保。有识之士,虑已及此。事关国民党兴亡绝续,望弟再思。</p> <p> 近读大作,有“切望父灵能回到家园与先人同在”之语,不胜感慨系之。今老先生仍厝于慈湖,统一之后,即当迁安故土,或奉化,或南京,或庐山,以了吾弟孝心。吾弟近曾有言:“要把孝顺的心,扩大为民族感情,去敬爱民族,奉献于国家。”诚哉斯言,盍不实践于统一大业!就国家民族而论,蒋氏两代对历史有所交代;就吾弟个人而言,可谓忠孝两全。</p><p> 否则,吾弟身后事何以自了。尚望三思。</p><p> 吾弟一生坎坷,决非命运安排,一切操之在己。千秋功罪,系于一念之间。当今国际风云变幻莫测,台湾上下众议纷纾岁月不居,来日苦短,夜长梦多,时不我与。盼弟善为抉择,未雨绸缪。“寥廓海天,不归何待?”</p> <p> 人到高年,愈加怀旧,如弟方便,余当束装就道,前往台北探望,并面聆诸长辈教益。“度尽劫波兄弟在,相逢一笑泯恩仇”。遥望南天,不禁神驰,书不尽言,诸希珍重,伫候复音。</p><p> 老夫人前请代为问安。方良、纬国及诸侄不一。</p><p> 顺祝近祺!</p><p> 廖承志 1982年7月24日 </p><p><strong></strong> </p><p><strong>1982年8月17日,宋美龄致廖承志公开信:</strong></p> <p> 承志世侄:</p><p> 七月廿四日致经国函,已在报章阅及。经国主政,负有对我中华民国赓续之职责,故其一再声言“不接触,不谈判,不妥协”,乃是表达我中华民国、中华民族及中国国民党浩然正气使之然也。</p><p> 余阅及世侄电函,本可一笑置之。但念及五十六七年前事,世侄尚属稚年,此中真情肯綮,殊多隔阂。余与令尊仲恺先生及令堂廖夫人,曩昔在广州大元帅府,得曾相识,嗣后,我总理在平病况阽危,甫值悍匪孙美瑶在临城绑劫蓝钢车案后,津浦铁路中断,大沽口并已封港,乃只得与大姊孔夫人绕道买棹先至青岛,由胶济路北上转平,时逢祁寒,车厢既无暖气,又无膳食饮料,车上水喉均已冰冻,车到北平前门车站,周身既抖且僵。离沪时即知途程艰难,甚至何时或可否能如期到达目的地,均难逆料,而所以赶往者,乃与总理之感情,期能有所相助之处,更予二家姐孙夫人精神上之奥援,于此时期中,在铁狮子胡同,与令堂朝夕相接,其足令余钦佩者,乃令堂对总理之三民主义,救国宏图,娓娓道来,令余惊讶不已。盖我国民党党人,固知推翻满清,改革腐陈,大不乏人,但一位从未浸受西方教育之中国女子而能了解西方传来之民主意识,在五十余年前实所罕见。余认其为一位真正不可多得之三民主义信徒也。</p> <p> 令尊仲恺先生乃我黄埔军校之党代表,夫黄埔乃我总理因宅心仁恕,但经多次浇漓经验,痛感投机分子之不可恃,决心手创此一培养革命精锐武力之军校,并将此尚待萌芽之革命军人魂,交付二人,即是将校长之职,委予先总统,以灌输革命思想,予党代表委诸令尊,其遴选之审慎,自不待言。</p><p> 观诸黄埔以后成效,如首先敉平陈炯明骁将林虎、洪兆麟后,得统一广东。接着以北伐进度之神速,令国民革命军军誉鹊起,威震全国,犹忆在北伐军总司令出发前夕,余与孙夫人,大兄子文先生等参加黄埔阅兵典礼,先总统向学生训话时,再次称廖党代表对本党之勋猷(此时廖先生已不幸遭凶物故,世侄虽未及冠,已能体会失怙之痛矣。)再次言及仲恺先生对黄埔之贡献时,先总统热泪盈眶,其真挚恸心,形于词色,闻之者莫不动容,谅今时尚存之当时黄埔学生,必尚能追忆及之。余认为仲恺先生始终是总理之忠实信徒,真如世侄所言,为人应“忠孝两全”,倘谓仲恺先生乃乔装为三民主义及总理之信徒,而实际上乃为潜伏国民党内者,则岂非有亏忠贞?若仲恺先生矢心忠贞,则岂非世侄有亏孝道耶?若忠孝皆肭(注“肭”为不任事与不足之意),则廖氏父子二代对历史岂非茫然自失,将如何作交代耶?</p> <p> 此意尚望三思。</p><p> 再者在所谓“文化大革命”斗臭、斗垮时期,闻世侄亦被列入斗争对象,虎口余生,亦云不幸之大幸,世侄或正以此认为聊可自慰。</p><p> 日本读卖新闻数年前报导,中共中央下令对全国29省市,进行归纳,总结出一“正式”统计数字,由1966年开始,到1976年10年之内,被迫害而死者有2000万人,波及遭殃者至6亿人。云南内蒙古等地,有727000名干部遭到迫害,其中34000人被害致死。</p> <p> 《北京日报》亦曾报导,北京市政府人员在“文革”中,就有12000人被杀,共党高层人物,如刘少奇、彭德怀、贺龙等人,均以充军及饥饿方式迫死,彼等如九泉有知,对大量干部自相残杀,豆萁相煎之手段,不知将作何想法?……世侄所道“外人巧言令色”旨哉斯言,莫非世侄默诋奸邪之媚外乎。</p><p> 相对言之,中华民国开国以来,除袁世凯之卑鄙觊觎野心失败外,纵军阀时代,亦莫敢窜改国号,中华民国自国民政府执政以来,始终以国父主义及爱国精神为基据,从未狮亵谀外,如将彼等巨像高悬全国,灵爽式凭,捧为所宗者,今天有正义感之犹太人尚唾弃其同宗之马克思,乃共党竟奉之为神明,并以马列主义为我中华民族之训练,此正如郭沫若宣称“斯太林是我爸爸”,实无耻之尤,足令人作三日呕。</p> <p> 或谓我总理联俄容共铸成大错,中国共产党曲解国父联合世界上以平等待我民族之要旨,断章取义,以国父容共一词为护身符,因此讳言国父批牍墨迹中曾亲批“以时局诚如来书所言,日人眼光远之人士,皆主结民党,共维东亚大局,其眼光短少之野心家,则另有肺腑也;现在民党,系联日为态度。”此一批示显见:(一)总理睿知,已洞察日本某些野心家将来之企图;(二)批示所书“现在”民党当以联日为态度,所言亦即谓一切依国家之需要而定。联日联俄均以当时平等待我为准绳。当时日本有助我之同情心,故总理乃以革命成功为先着,再者毋忘黄花岗七十二烈士中,有对中山先生肝胆相照之日本信徒为我革命而牺牲者。世侄在万籁俱寂时,谅亦曾自忖一生,波劫重重,在抗战前后,若非先总统怀仁念旧,则世侄何能脱囹圄之厄,生命之忧,致尚冀三次合作,岂非梦呓?又岂不明黄台之瓜不堪三摘之至理耶?</p> <p> 此时大陆山头主义更为猖獗,贪污普遍,贿赂公行,特权阶级包庇徇私,萋萋迭闻:“走后门”之为也牲牲(注“牲牲”众多也。)皆是,祸在萧墙,是不待言,敏若世侄,抑有思及终生为蟒螫所利用,随时领导一更,政策亦变,旦夕为危,终将不免否?过去毛酋秉权,一日数惊,斗争侮辱,酷刑处死,任其摆布,人权尊严,悉数荡尽,然若能敝帚自珍,幡然来归,以承父志,澹泊改观,养颐天年,或能予以参加建国工作之机会。倘执迷不醒,他日光复大陆,则诸君仍可冉冉超生,若愿欣赏雪窦风光,亦决不必削发,以净余劫,回头是岸,愿扪心自问。款款之诚,书不尽意。</p> <p> 顺祝安谧</p><p> 民国71年8月17日</p><p> 宋美龄 </p><p> </p><p> 宋美龄致廖承志公开信后的第三年,74岁高龄的蒋经国在台湾再度当选连任总统。蒋经国在古稀之年,竟勇敢地走上了众人都没想到的一条新路。1986年3月,蒋经国下令成立“政治革新小组”研究政治体制改革问题。9月,蒋经国表示将要解除实行38年的戒严令,并开放党禁,开放报禁。此言一出,令岛内民运人士迫不及待地于9月28日集会,民主进步党成立。反对党公然成立这还了得?情治部门立即呈上反动分子名单,蒋经国未批,他淡淡地说道:“使用权力容易,难就难在晓得什么时候不去用它。”</p> <p> 10月7日,蒋经国接见美国《华盛顿邮报》发行人Graham女士时,告知台湾“将解除戒严、开放组党”。10月10日,蒋经国在“双十节”发表要对历史、对10亿同胞、对全体华侨负责的讲话后,指示修订“人民团体组织法”、“选举罢免法”、“国家安全法”,开启台湾民主宪政之门。马英九在听到蒋经国亲口说要开放党禁、报禁时,当即被一股“我们正在创造历史”的电流击中,但国民党要人则纷纷质疑,“国策顾问”沈昌焕说:“这样可能会使我们的党将来失去政权!”,蒋经国却淡淡地回答:“世上没有永远的执政党”,声音不大,语气轻微,但这一句话,分明如同万钧雷霆,振聋发聩。</p> <p> 这些只是为台湾结束党权世袭、一党专制提供了法律、理论基础,蒋经国实施的军队非党化、取消学生三民主义的政治考试、剥离政府部门的专职党职人员等措施则是结束党权世袭、一党专制的实际行动。1986年9月28日,“民主进步党”成立,结束了国民党长期“一党专制”的局面。1988年1月13日,蒋经国因心脏病逝世。而他所开创的历史性变革以巨大的惯性继续向前。</p><p> 马英九在《怀念蒋经国先生》一文中对蒋经国的评价也许最为平正:“我们可以说经国先生是一位威权时代的开明领袖,他一方面振兴经济、厚植国力,一方面亲手启动终结威权时代的政治工程。我们崇敬他,就因为他能突破家世、出身、教育、历练乃至意识形态的局限,务实肆应变局,进而开创新局,在这个意义上,他的身影,不仅不曾褪色,反而历久弥新。”</p> <p> 《亚洲时报》方德豪写的评论说得好:“虽说蒋介石是独裁者没错,但这段历史早已过去,蒋家王朝最后一名强人蒋经国也把台湾民主化了;民进党不断重提历史伤痕,对社会的族群融合可谓是毫无帮助”。“众人皆知马英九属蒋经国隔代钦点的接班人,是国民党的太子党,但他却选择了族群融合,……马英九深耕台南,把两岸政策向中间路线靠拢。他的调整,符合了台湾民众渴望维持现状,社会稳定,经济发展的期许,切合到主流民意的最大公因数。所谓此消彼长,民进党这一败,实在是历史的必然。”方德豪还说:“从民主政治发展的角度,台湾这次选举说明了一点:只要有适当的条件(如言论及新闻自由,理性及教育素质良好的选民),民主选举是可以很好的制约和调节极端的政治路线的。台湾的选民,这次就用它们的选票说明了民主政治的一个重要作用,即民主可以有利于社会稳定;而这个证明,恰恰是发生在华人的社会内的。中华民族,绝对是有能力和应该推动民主,也是应该培养发展民主政制条件。”他说得很有道理。</p> <p> 蒋经国儿媳蒋方智怡称蒋经国晚年开放党禁、推动台湾“民主化”并非形势所迫,而是顺时而为。从这个意义上来看,不是蒋经国的开放党禁使国民党衰败,而是挽救了本来已在衰败的国民党。国民党放弃一党专政的威权统治,转为真正依靠民心、立党为公的政党,也才能更健康地生存下去。当初蒋经国顺应历史潮流,人民自然不会忘记他,诚如廖承志所言:“就国家民族而论,蒋氏两代对历史有所交代”;蒋经国本人“可谓忠孝两全”。</p><p> 在蒋经国身上有许多优良品质,但最重要的,还是他有承担历史责任的勇气。 </p> <p>来源:爱思想</p><p>链接:<a href="http://www.aisixiang.com/data/37803.html" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">http://www.aisixiang.com/data/37803.html</a></p> </span></td></tr></tbody></table></span> Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-76271837241982369822011-07-20T08:41:00.001-04:002011-07-20T08:41:58.939-04:00[一种声音]吴晓波:中国工人阶级的忧伤<span class="Apple-style-span" style="font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; font-size: 12px; "><table border="0" cellspacing="0" cellpadding="0" width="90%" style="table-layout: fixed; "><tbody><tr><td class="oblog_t_4" style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(221, 221, 221); "> <p><span class="style1" style="font-size: 14px; font-weight: bold; color: rgb(102, 102, 102); "><font size="3"><a href="http://www.dapenti.com/blog/blog.asp?name=xilei&subjectid=64" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">[一种声音]</a><a href="http://www.dapenti.com/blog/more.asp?name=xilei&id=46712" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">吴晓波:中国工人阶级的忧伤</a></font></span></p> </td></tr><tr><td style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); "><table border="0" cellspacing="0" cellpadding="0" width="100%"><tbody><tr><td style="font-size: 12px; font-family: Verdana, tahoma, Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); "> <div align="right"><span class="oblog_text" style="font-size: 14px; line-height: 22px; ">xilei 发布于 2011-7-20 11:24:00</span></div></td></tr></tbody></table><br><br><span style="float: right; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 20px; "> </div></span><br><span class="oblog_text" style="font-size: 14px; line-height: 22px; "><p></p><p>陈桂林是东北一家大型国有企业铸造分厂的工人,40来岁那年,工厂难以为继,被"改革"了,他和同在厂里干活的妻子同时下岗。他会拉手风琴,便与几位同样下岗的老伙伴组成了一个草台班子,在人家出殡和商场搞促销时赚点辛苦钱。他有一个正在读小学、特别喜欢弹钢琴的女儿,因为买不起琴,他跟几位老伙计去偷琴,被抓进了派出所,他还用木板为女儿"画"了一架不会发出声音的"钢琴"。陈桂林的生活"一败涂地"。他的妻子离家出走,跟上了一个卖假药的老板。两人开始争夺女儿的抚养权。女儿倒也现实,提出谁能给她一架钢琴就跟谁。身无分文的陈桂林就回到败破不堪的废弃车间,跟几位老伙计一起――他们现在的"身份"是大嫂级歌手、小偷、黑社会团伙的小头目、打麻将还耍赖的赌徒、杀猪专业户、退休老工程师,硬生生地"铸造"出了一台钢琴。</p> <p>这是一部正在国内院线放映的电影,名字叫《钢的琴》。上周,在只有四个观众的、空荡荡的影院里,我静静地看完了。</p><p>根据我有限的知识,这个故事一定发生在1998年到2003年之间,当时,中央政府提出"三年搞活国有企业",除了少数有资源垄断优势的大型企业之外,其余数以十万计的企业被"关停并转",超过两千万的产业工人被要求下岗。当时还没有建立社会保障体系,实行的是工龄买断的办法,一年工龄在各省的价格不同,东北地区大约是2000元,江浙一带则是800元到1000元――也就是说,一个工龄二十年的工人拿了几万元钱就被扔到了马路上。</p> <p>南方地区因为商品经济活跃,下岗工人投亲靠友,很快就能找到工作,而在一些老工业基地,往往一家两代人都在一个工厂,在过去几十年里,他们自认是"工厂的主人翁",从来没有培育自主谋生的技能。一旦失去工作,马上成了流氓无产者。陈桂林和他的妻子、老伙计们正是这样一群,在毫无准备的情况下被突然抛弃的工人阶级。</p><p>当时,下岗情况最严峻的正是《钢的琴》的故事发生地――在计划经济年代有"国老大"之称的辽宁省。2002年,我曾到沈阳铁西区去做下岗工人情况调研,那里是中国最著名的机械装备业基地,从日据年代就开始建设,1940年代有"东方鲁尔"之称,新中国成立后,这里又是"一五规划"的重中之重,苏联援建的"156工程"中有三家建在铁西。这里还有全国最大的工人居住区。上世纪90年代末期之后,铁西区江河日下,成了下岗重灾区。我去调研一周,目睹情况之悲惨,触目惊心,其中听到的两则真实故事如下:</p> <p>――当时铁西区很多工人家庭全家下岗,生活无着,妻子被迫去洗浴场做皮肉生意,傍晚时分,丈夫用破自行车驮她至场外,妻子入内,十几位大老爷们儿就在外面吸闷烟,午夜下班,再用车默默驮回。沈阳当地人称之"忍者神龟"。</p><p>――一户家庭夫妻下岗,生活艰辛,一日,读中学的儿子回家,说学校要开运动会,老师要求穿运动鞋。家里实在拿不出买鞋的钱,吃饭期间,妻子开始抱怨丈夫没有本事,丈夫埋头吃饭,一语不发,妻子抱怨不止,丈夫放下碗筷,默默走向阳台,一跃而下。</p> <p>我至今记得那些向我讲述这些故事的人们的面孔,他们静静的说,无悲无伤,苦难被深锁在细细的皱纹里。到今天,我常常在梦中遇到他们,浑身颤栗不已。</p><p>他们是这个世界上最好的产业工人,技能高超――否则不可能用手工的方式打造出一台钢铸的钢琴,忠于职守,男人个性豪爽,女人温润体贴,他们没有犯过任何错误,却要承担完全不可能承受的改革代价。</p><p>在后来做改革史研究中,我还接触到下面这个史料:</p><p>早在1996至1997年间,由于国有企业的大面积亏损以及随之而被迫展开的产权改造运动,按官方的统计数据,下岗工人的总量已经达到1500万人,其后一直居高不下,这成了当时最可怕的"社会炸弹"。在1998年前后,世界银行和国务院体改办课题组分别对社保欠帐的数目进行过估算,一个比较接近的数目是2万亿元。</p> <p>一些经济学家和官员――包括吴敬琏、周小川、林毅夫以及出任过财政部长的刘仲藜等人便提出,"这笔养老保险欠帐问题不解决,新的养老保险体系就无法正常运作,建立社会安全网、保持社会稳定就会成为一句空话。"在后来的几年里,他们一再建言,解决国有企业老职工的社保欠帐问题和建立公正完善的社会保障基金,2000年初,国家体改办曾设计了一个计划,拟划拨近2万亿元国有资产存量"做实"老职工的社会保障个人帐户,然而,几经波折,这一计划最终还是流产。反对者的理由是"把国有资产变成了职工的私人资产,明摆着是国有资产的流失"。晚年吴敬琏在评论这一往事时,用了八个字:"非不能也,是不为也"。</p> <p>去年,在参加一个论坛时,我遇到一位当年反对2万亿划拨计划的著名智囊、经济学家,我问他,十年以降,对当年的主张有何反思。他一边吃饭,一边淡淡的回答我说,"不是都过去了嘛。"</p><p>是的。都过去了。一地衰败的铁西区过去了,国有企业改革的难关过去了,两千万下岗工人的人生也都过去了。现在,只有很小很小的一点忧伤,留在一部叫做《钢的琴》的小成本电影里。历史常常做选择性的记忆,因而它是不真实的,甚或如卡尔.波普尔所说的,是"没有意义的。"</p> <p>这个时代若真有尊严,它从来在民间。</p><p>在这篇与文艺无关的专栏里,我要向《钢的琴》的主创人员致意――他们是导演张猛、男主角王千源以及不取报酬的东北籍女演员秦海璐,你们做了一份真实的工作,让那些企图在电影院里逃避现实的人们有了一次突然与当代中国直面相撞的机会。</p><p>有可能的话,去看一下《钢的琴》吧。它被安排在"中国年度大片"《建党伟业》和"世界年度大片"《变形金刚4》之间上映,仅仅是一个"聊胜于无"的插曲。</p><p> (注:本文仅代表作者本人观点。)<br></p><p>来源:FT中文网</p><p>链接:<a href="http://www.ftchinese.com/story/001039689?page=1" style="color: rgb(51, 102, 102); border-bottom-color: rgb(153, 153, 153); border-bottom-width: 1px; border-bottom-style: dotted; background-color: transparent; text-decoration: none; ">http://www.ftchinese.com/story/001039689?page=1</a></p> </span></td></tr></tbody></table></span> Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-29503998986216942652011-07-17T11:32:00.000-04:002011-07-17T11:33:21.914-04:00灯都灭了 (凤凰周刊这篇文章写出了感情)<div><p style="width=600px"><img src="http://www.starming.com/xml/star/img/2011/07/33000/32767/img/img_1310832305_0.jpg" width="250px" style="float:right;margin-top:0px;margin-bottom:10px;margin-left:10px;margin-right:0px;"> 要了解世道人心的变化,最便捷最实惠的莫过看男的都想娶谁,尤其是女的都爱跟谁了。这类节目不一定可靠,但起码比社论党章可靠。直到2007年党章的头一句话都还是"工人阶级的先锋队"。其实即便是毛时代,女的找男的,工人也不是首选,更别说农民了。不过毛时代普通劳动者的社会地位,比今天还是高不少。上世纪50年代末60年代初之所以出现大饥荒而未出现大动乱,相对平等的社会关系应该是一个重要的条件吧。<br> 音乐一惊一乍间"幸福门"打开,跑进来一位三四十岁的农民工。面对一字排开、花枝招展的时尚美女,农民工除了胆子几乎什么都没有:没房,没车,没个头,没风度,没学历。"电大"学历他自然有:电视明星那种半小跑腿半大阅兵的台风台步,还有电视主持人一年四季也不惦记换换的贫瘠语言,他都学了且都没学到位。他虽然什么都没有,但还有自知之明,知道自己什么都没有。只是,他自认为拥有一项别人没有的长处:他愿意倒插门。倒插门在传统的父系血缘社会里算得上一种可以出让或交易的价值,但搁到老婆都能互换的当今、房子比什么都贵重的当下,这还算价值么?起码对于现场的美女来说,连屁都不值——屁股的屁:节目中某美女就要求另一男选手转身,说"我想看看你的臀部"。<br> 农民工上场后,美女们脸色很难看,就好像雪白的婚纱被要饭的抓了一把。美女们说话很难听,她们"麻烦"农民工"活得现实一些";"劳驾回到真实的世界";"可以同情你,可怜你,但不会接受你"。还有一位生怕农民工听了不铭心刻骨,说她家有一座别墅,两部法拉利;她是研究生学历,可以嫁给两辆兰博基尼;她要找的是男友,不是"男佣"。这样近乎辱骂的"真情告白"跟这类社会痒痒肉上的轻佻节目,跟美女们日夜经营的脸蛋、总算加入的阶级、正在恶补的风度,似乎极不兼容但又异常匹配。中国的资产阶级(当然不是全部)刚刚抢得一身臭汗,格调修养只能俟乎孙儿孙女了,第二代就是用法国香水从腊月泡到来年立秋,也很难去掉那股子车匪电霸气。现场点评人万峰拍案大怒,说你拥有再多财富,哪怕你拥有半个地球都与我们无关!我也很愤怒,但愤怒归愤怒,美女只不过以打砸抢资本主义阶段所特有的傻大姐加胡汉三方式,道出了中国贫富分化的现实。在这个现实中,谁跟谁都是有关的。<br> 其实,这个现实让我感到的更是忧惧。贫富分化哪国都有,但像中国这样丧心病狂的则少有。这次在南方从苏州往上海的汽车上和一位日本经济学家邻座,问起他们国家的情况,老先生说日本经济多年来一直很差,好在贫富差距不大,社会还算稳定。而中国几十年改革走的是一味"拉大差距"的基本路线,财富像嗜血的蚊蚋在社会的伤口上团生麇集。我进过穷人的蜗居,有些跟废品收购站没两样,除了小。我也见过富人的豪宅,想形容一下词儿不够,得参考《阿房宫赋》。随着市场经济恶性膨胀为市场社会,财富价值观一家独大,笑贫不笑娼成为亿万人的内心法则。在同一个但非同一期节目里,有位女嘉宾便喊出"宁坐宝马车里哭,也不坐自行车后座上笑"这种八大胡同员工都未必喊得出的口号。由亿万劳动者出资、由各级政府掌控、由各路文化精英伙同各色男女流氓操办的大众传媒,都争先恐后地讴歌财富,肆无忌惮地嘲笑劳动,针扎锥刺着底层民众逼仄而灰暗的人生视界。我有回随便浏览了十个电视频道,发现其中有六个正在弘扬影视明星奢靡无耻的生活。文化的恶之花像黑衣女巫摇荡在道路两侧,欢送中华复兴的列车从阶级分化的丘陵地带直奔社会分裂的大峡谷。财富分配上一刀两断而财富价值观上一统江山的社会,是对底层人群的双重围猎,不但将其驱往社会经济的边缘,还要将其逼入心理文化的绝地。节目中农民工渴望发家致富而不能、奋力出人头地而不遂、只好以屈身为进身的入赘计划遭唾面自干的经历,就是这个广大现实的缩影。主持人最后请神色黯然的农民工退场,告诉他"灯都灭了"——没人要他,则更像是未来走势的不祥隐喻。<br> 如今在中国,如果谁为弱者说话,总会有意识形态医护人员跑来为他体检。混得怎么样是一项重要指标,混得不好说明他狗急跳墙,混得还好说明他别有用心。那我也自检一下:底层我也许还不算,但起码算是他们邻居,邻居失火,我会遭殃,因为除了中国我再无别处可去。我对未来无奢望,平常就行,平安就够。绝大多数中国人的愿望也都不过如此。但以中国社会日渐浓重的戾气,开始弥漫的杀气,我很怕这希望落空。中国几十年经济成就很难说不辉煌,但社会代价也很难说不惨重。华灯下崛起跃进的中国拖着一个长长的影子,那是追债索命的中国。被发展遗弃、被富裕羞辱、被未来谢绝的人群要真是牛马也就罢了,可惜他们不是。不是就不会放过你。你在他们那儿播种了什么,你还将在他们那儿收获什么。能量会转化,但不会乱转:你右手扇过去的一掌,有可能转成你左腿挨的一刀,也有可能转成你左右眼皮日夜不停的惊跳,但不大可能转成你心里的悠悠钟声、梦里的融融月色。从王斌余到邓玉娇,从通钢到富士康,络绎不绝的杀人和杀己者像惊叹号一样走上中国未来的地平线。他们不会只代表极少数精神病患者,而是代表了更广大的底层人群。这个人群如果老也上不了宴席,如果老是被东倒西歪的宾客叱骂嘲笑,那么有一天,量变会积累成一次地动山摇,让盛宴戛然而止。今年"维稳"预算达5140亿元,已逼近5321亿元的军费了。<br> 中国自晚清以来,一向是来自资本主义世界体系的外部压力转化为国内社会政治经济危机,最终导致大厦倾覆,江山易手。这样的直接外部压力近年降至百年最低,这固然是好事,但似乎也是坏事。所谓好事,基本走出近代大危机的中华民族正可以再接再厉,更上层楼,以五千年的历史文明为后盾,融会新机,重生再造,从亚洲进军世界,为人类另辟蹊径,为历史别开生面。所谓坏事,众多精英刚刚从沟底爬到沟边,便忘了自己姓什么,天高地厚也一概不知。中国经济的崛起反倒加速了他们精神的坠落、智力的下跌——已跌破行凶不讲度、作恶不避人的大关了。可以说,他们毫无收敛的疯狂已成国家未来的直接隐患、最大乱源。血泣痈生,肉腐为脓,这部分精英已成为社会的疽痈。如今疽穿痈溃,流出腐烂而放肆的富二代。富一代富二代好像不明白他们的所作所为,是在为自己买墓地,给富三代绝后路。<br> 据报载最近不少富人纷纷移民或出逃海外——这回轮到美国合唱"我家大门常打开"了。这些人算是精英中的明白人,明白一个简单的道理:当别人的灯都灭了,你们的黑夜也就降临了。<br> 全文阅读>><br> 推荐小组: 设计 插画 网站技术<br> 关注我们: 关注新浪微博 豆瓣小组 人人网 腾讯微博 RSS<br> Starming 星光社 版本:0.06 email:ming1016@gmail.com 关于我们 小组 论坛 杂志 精选 鄂ICP备11004199 <br> <br> 原文地址: <a href="http://www.starming.com/index.php?action=plugin&v=wave&tpl=union&ac=viewgrouppost&gid=32767&tid=1000003048" target="_blank"><a href="http://www.starming.com/index.php?action=plugin&v=wave&tpl=union&ac=viewgrouppost&gid=32767&tid=1000003048">http://www.starming.com/index.php?action=plugin&v=wave&tpl=union&ac=viewgrouppost&gid=32767&tid=1000003048</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-30040799374323345782011-07-16T10:44:00.000-04:002011-07-16T10:45:28.146-04:00修改hosts访问google+ 文档 sites chrome<div><p style="width=600px"> 来源:<a href="http://novelor.com/2011/07/16/political-economics/%e4%bf%ae%e6%94%b9hosts%e8%ae%bf%e9%97%aegoogle-%e6%96%87%e6%a1%a3-sites-chrome/?utm_source=rss&utm_medium=rss&utm_campaign=%25e4%25bf%25ae%25e6%2594%25b9hosts%25e8%25ae%25bf%25e9%2597%25aegoogle-%25e6%2596%2587%25e6%25a1%25a3-sites-chrome"><a href="http://novelor.com/2011/07/16/political-economics/%e4%bf%ae%e6%94%b9hosts%e8%ae%bf%e9%97%aegoogle-%e6%96%87%e6%a1%a3-sites-chrome/?utm_source=rss&utm_medium=rss&utm_campaign=%25e4%25bf%25ae%25e6%2594%25b9hosts%25e8%25ae%25bf%25e9%2597%25aegoogle-%25e6%2596%2587%25e6%25a1%25a3-sites-chrome">http://novelor.com/2011/07/16/political-economics/%e4%bf%ae%e6%94%b9hosts%e8%ae%bf%e9%97%aegoogle-%e6%96%87%e6%a1%a3-sites-chrome/?utm_source=rss&utm_medium=rss&utm_campaign=%25e4%25bf%25ae%25e6%2594%25b9hosts%25e8%25ae%25bf%25e9%2597%25aegoogle-%25e6%2596%2587%25e6%25a1%25a3-sites-chrome</a></a><br> (整合网上其他资源而成)<br> 修改host地址是一种既方便又好用的翻墙方法。具体如下<br> 1. 找到hosts这个文件,在Windows 系统下是位于C盘/windows/system32/drivers/ect目录里。<br> 2. 以记事本的方式打开hosts,添加以下地址并保存 就可以了。如果是Win7用户,首先要修改管理员的控制权限,把限制降到最低级别。<br> 209.85.225.101 <a href="http://sites.google.com"><a href="http://sites.google.com">sites.google.com</a></a><br> 74.125.39.99 <a href="http://chrome.google.com"><a href="http://chrome.google.com">chrome.google.com</a></a><br> 74.125.39.99 <a href="http://clients2.google.com"><a href="http://clients2.google.com">clients2.google.com</a></a><br> 74.125.235.107 <a href="http://docs.google.com"><a href="http://docs.google.com">docs.google.com</a></a><br> 74.125.235.107 <a href="http://spreadsheets.google.com"><a href="http://spreadsheets.google.com">spreadsheets.google.com</a></a><br> 74.125.235.107 <a href="http://docs0.google.com"><a href="http://docs0.google.com">docs0.google.com</a></a><br> 74.125.235.107 <a href="http://spreadsheets0.google.com"><a href="http://spreadsheets0.google.com">spreadsheets0.google.com</a></a><br> 74.125.235.107 <a href="http://docs1.google.com"><a href="http://docs1.google.com">docs1.google.com</a></a><br> 74.125.235.107 spreadsheets1.google.com203.208.46.30 <a href="http://plus.google.com"><a href="http://plus.google.com">plus.google.com</a></a><br> 203.208.46.30 <a href="http://lh1.ggpht.com"><a href="http://lh1.ggpht.com">lh1.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh2.ggpht.com"><a href="http://lh2.ggpht.com">lh2.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh3.ggpht.com"><a href="http://lh3.ggpht.com">lh3.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh4.ggpht.com"><a href="http://lh4.ggpht.com">lh4.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh5.ggpht.com"><a href="http://lh5.ggpht.com">lh5.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh6.ggpht.com"><a href="http://lh6.ggpht.com">lh6.ggpht.com</a></a><br> 203.208.46.30 <a href="http://lh6.googleusercontent.com"><a href="http://lh6.googleusercontent.com">lh6.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://lh5.googleusercontent.com"><a href="http://lh5.googleusercontent.com">lh5.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://lh4.googleusercontent.com"><a href="http://lh4.googleusercontent.com">lh4.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://lh3.googleusercontent.com"><a href="http://lh3.googleusercontent.com">lh3.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://lh2.googleusercontent.com"><a href="http://lh2.googleusercontent.com">lh2.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://lh1.googleusercontent.com"><a href="http://lh1.googleusercontent.com">lh1.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images1-focus-opensocial.googleusercontent.com"><a href="http://images1-focus-opensocial.googleusercontent.com">images1-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images2-focus-opensocial.googleusercontent.com"><a href="http://images2-focus-opensocial.googleusercontent.com">images2-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images3-focus-opensocial.googleusercontent.com"><a href="http://images3-focus-opensocial.googleusercontent.com">images3-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images4-focus-opensocial.googleusercontent.com"><a href="http://images4-focus-opensocial.googleusercontent.com">images4-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images5-focus-opensocial.googleusercontent.com"><a href="http://images5-focus-opensocial.googleusercontent.com">images5-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://images6-focus-opensocial.googleusercontent.com"><a href="http://images6-focus-opensocial.googleusercontent.com">images6-focus-opensocial.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s6.googleusercontent.com"><a href="http://s6.googleusercontent.com">s6.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s5.googleusercontent.com"><a href="http://s5.googleusercontent.com">s5.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s4.googleusercontent.com"><a href="http://s4.googleusercontent.com">s4.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s3.googleusercontent.com"><a href="http://s3.googleusercontent.com">s3.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s2.googleusercontent.com"><a href="http://s2.googleusercontent.com">s2.googleusercontent.com</a></a><br> 203.208.46.30 <a href="http://s1.googleusercontent.com"><a href="http://s1.googleusercontent.com">s1.googleusercontent.com</a></a><br> 测试至今天(2011.07.16)是可用的<br> 修改hosts访问google+ 文档 sites chrome is a post from: 创意坊<br> 推特用户请点击这里免翻墙上推特点击这里下载翻墙软件更多翻墙方法请发电邮(最好用Gmail)到:<a href="mailto:gongminshehui1@gmail.com翻墙技术博客GFW">gongminshehui1@gmail.com翻墙技术博客GFW</a> BLOG(免翻墙) 阅读中国数字时代(免翻墙) <br> <br> 原文地址: <a href="http://feedproxy.google.com/~r/chinagfwblog/~3/w-4AKhYnMOs/hostsgoogle-sites-chrome.html" target="_blank"><a href="http://feedproxy.google.com/~r/chinagfwblog/~3/w-4AKhYnMOs/hostsgoogle-sites-chrome.html">http://feedproxy.google.com/~r/chinagfwblog/~3/w-4AKhYnMOs/hostsgoogle-sites-chrome.html</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0tag:blogger.com,1999:blog-4373516896767983050.post-37717869413325400752011-07-16T10:43:00.000-04:002011-07-16T10:44:03.382-04:00HTC在下一盘很大的四国军棋!!!!!!!!!!!<div><p style="width=600px"> 昨天晚上三点多在床上玩手机,突然发现G7有一样以前从来没有发现过的功能——心率测量。我百思不得其解,这么个玩意居然有这种传感器?第二天在校内上不耻下问,各路大虾纷纷过来献丑,"跟gaowan鞘膜积液透光实验差不多"、"怀疑是投射光线波动"、"跟监护仪的血氧饱和度一个道理"、"脈拍による、血流の微妙な変化をカメラで捕らえ"……各种答案应有尽有。当然这些愚昧的回答,是不能让我满意的。下午回家时,就此问题特意去了路边的手机店咨询专业人士。<br> 手机店不大,而且有点乱,我的G7就是在这儿买的。柜台上熙熙攘攘的挤着各种NOKLA、AirPhone、MoTuo。只有老板在。老板皮肤微黑,沿海五官。<br> 老板很热情,"上次买的G7好用吧?"一口浓重台湾腔,很明显他还认得我。<br> 直奔主题吧,我跟老板提出了那个困扰了我一天的问题。<br> 老板没有回答我,抬头看了看窗外。<br> "战争要爆发了。"<br> "老板也关注南海啊?"我客套了两句,心想战争爆发关你屌事。<br> 老板坐下来,重新泡了一壶铁观音。茶叶卷曲、厚重,墨绿色,带白霜。应该是安溪产的西坪茶,看来老板赚得不错。<br> "不是南海,是大陆。"老板一边说,一边给我递了一杯茶,"请。"<br> "谢谢。"我只想让他快点告诉我答案。我还得赶紧回家收衣服,快下雨了。<br> 老板品了一口茶,慢慢的说,"说回你刚才的问题吧,很简单,因为手机里面有心率传感器。"<br> 我表示很疑惑,我知道G7有光线传感器、距离传感器、重力传感器,可从没听说过有心率传感器。"要这个作甚?"<br> "除颤仪的需要。"<br> "什么?"我以为我听错了。<br> "Automated External Defibrillator,AED,国内讲的自动除颤仪。"<br> 我重新看了看老板,我觉得眼前穿着人字拖大裤衩的中年大叔不可能认识这么专业的医学名词。<br> "那个,G7是除颤仪?"<br> 老板表情很坚定,"是的,但是需要两台HTC手机一起除颤,把手机放在胸前,手机会自动分析心率,两台通过蓝牙进行通信,同步瞬间放电。HTC的屏幕之所以越来越大,就是因为除颤的需要。"<br> 我脑海里快速闪过精神分裂症的诊断标准之一:原发性妄想。上学期背这个四百多字的诊断标准背死我了。<br> "老板你开玩笑吧?AED用电很猛的好不好?HTC花那么大力气搞这么个不实用的功能干嘛?"我想走人了,我不喜欢和脑子有问题的人说话,再说下去可能有生命危险。<br> 老板站起来了,"你懂个屁!你以为这个功能是普通人用的么?这是战争时候救命用的!"<br> 我吓了一跳。老板发现自己有些失态了,深呼吸了一下,坐下来,慢慢的说,"HTC在下一盘很大的棋。"老板顿了顿,"其实我是高雄人。"<br> 我身体往前挪了挪,我开始觉得老板不仅仅只是个卖手机的。<br> 老板说,"HTC把大量军工产品作成手机卖到大陆,你不要以为它只是个手机。你没发现HTC的手机都特别费电么?因为设计时默认隐藏50%的电量作为应急时AED的能量供应。"<br> 难怪啊,难怪我的G7一天至少要充两次电!原来如此!<br> 老板接着说,"现在很多国军已经潜伏在大陆了,我也是。人手一个HTC。你觉得一个普通人需要全球卫星定位干嘛?需要世界时钟干嘛?"<br> 可是我还有一事不解,"可是老板,这手机我一般都只拿来玩游戏的,军工产品拿来玩游戏也有点太……"<br> 老板笑了笑说:"你以为你玩的是游戏么?"<br> 我从未觉得我的游戏有什么不正常的。<br> 老板问:"HTC的游戏都是军事训练用的,说说看你手机里都有什么游戏。"<br> "切西瓜?"<br> "军刀训练用的。"<br> "愤怒的小鸟?"<br> "学习弹道学的。"<br> "植物大战僵尸?"<br> "学习战略部署。"<br> ……<br> 我顿时凌乱了。<br> 老板告诉我,国军的军校学员需要切西瓜1000分+一鸟通关才能毕业。<br> 老板接下来的一番话更是让我震茎。"你知道HTC什么意思吗?"<br> "知道啊,High Technology Computer Corporation,宏达电子。"我说。<br> "呵呵,这只是掩饰罢了"<br> "那是?"我表示不解。<br> "人类改变共###产###主###义"<br> "什么!?"我的茶杯掉在桌上。<br> "Human Transform Com###munism"<br> 天外一声惊雷,瞬时倾盆大雨。<br> 老板默默地看着门外,犹如一尊雕像。"战争马上就要来临了。国军马上就要来了。"<br> 我不敢相信我今天知道的这些是真的。我终于忍不住问他,"为什么告诉我这些?"<br> "因为,你也会说闽南话。闽台人民血浓于水。"<br> "你快点回去吧,我也要打烊了,以后就不开店了。我明天到高雄的机票都买好了。"老板拿了个iPhone4给我,"这个给你吧,反正我也要关店了,你做个纪念。"<br> 我坚定地回答:"不用了,有这个G7就够了。"<br> 望着老板离去的背影,我手里的G7愈发沉重了。<br> 原帖链接<br> __________________________________________________________________<br> 欢迎订阅关注冷笑话微博FOTO!精美图片每日分享精彩推荐最好玩的冷游戏 <br> <br> 原文地址: <a href="http://lengxiaohua.net/2011/07/15/orz-htc/" target="_blank"><a href="http://lengxiaohua.net/2011/07/15/orz-htc/">http://lengxiaohua.net/2011/07/15/orz-htc/</a> </a> <br> <br> 来自ZAKER: <a href="http://www.myzaker.com" title="ZAKER" target="_blank"><a href="http://www.myzaker.com">http://www.myzaker.com</a></a></p></div><div></div>Anonymoushttp://www.blogger.com/profile/13064720915136134313noreply@blogger.com0