- 博客(4)
- 资源 (23)
- 收藏
- 关注
转载 嵌入式系统中视频解码优化
在嵌入式系统上进行开发很重要一点就是必须要让你的程序更有效率,因为嵌入式系统往往配置有限,甚至很差,而当你的程序需要进行大量的运算时,就更需要注意这一点,通过剖析一些经验来了解视频解码优化.
2010-08-13 16:15:00 1592
coreutils-5.97-MSYS-1.0.11-snapshot.tar
coreutils-5.97-MSYS-1.0.11-snapshot.tar为MSYS补丁。
MSYS:Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。是Windows下最优秀的GNU环境。(是否厌倦了Cygwin蜗牛般的shell环境,试试MSYS中的rxvt吧)
2010-07-09
最新版本ffmpeg-0.5.1
FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。
2010-07-09
MinGW-5.1.6
MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。这里的“纯粹”是指「使用msvcrt.dll的应用程序」。无法使用MFC (Microsoft Foundation Classes微软基础类库)。
2010-07-09
bash-2.05b-MSYS.tar
bash-2.05b-MSYS.tar是对MSYS 1.0.11的补丁。
MSYS:Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。是Windows下最优秀的GNU环境。(是否厌倦了Cygwin蜗牛般的shell环境,试试MSYS中的rxvt吧)
2010-07-09
MSYS-1.0.11
MSYS的安装文件,版本为1.0.11.
MSYS:Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。是Windows下最优秀的GNU环境。(是否厌倦了Cygwin蜗牛般的shell环境,试试MSYS中的rxvt吧)。
2010-07-09
NuMegaBoundsCheckerVisualC++V6.5
Release Notes for NuMega SmartCheck (TM) Version 6.0
This document contains late-breaking technical and product information.
Contents
* What's New
* Reporting Problems And Suggestions
* Installation Prerequisites
* Installation
* Removing An Installation
* Frequently Asked Questions
* Bug Fixes
* Known Anomalies
* Technical Notes
What's New
==========
SmartCheck 6.0 is easier to use. You can start and stop event reporting
to see just the events you are debugging. When SmartCheck detects an
error, you can go directly to Visual Basic to fix it. SmartCheck 6.0
supports VB6 and several new operating systems. It also contains bug
fixes and many enhancements.
1. New operating systems and compilers supported:
* Microsoft Visual Basic 6
* Microsoft Visual C++ 6
* Windows CE emulation mode
* Windows 98
2. Microsoft Visual Basic 6 support includes support for User defined
types (UDTs) and CallByName, plus parameter checking and error analysis
for these new VB intrinsics: Filter, FormatCurrency, FormatDateTime,
FormatNumber, FormatPercent, InstrRev, Join, MonthName, Replace, Round,
Split, StrReverse, WeekdayName, StrConv, CreateObject. In Examples,
VBBugBench has examples for VB 6 intrinsics. These are disabled by
default. To enable the VB 6 intrinsics add the following line to the
Conditional Compilation Arguments edit control on the Make Property
Page: VB6_INTRINSICS = 1. Set VB6_INTRINSICS = 0 (or leave the argument
blank) to compile for VB 5.
3. When SmartCheck detects an error, you can go to your source code in
Visual Basic and edit your code. You must launch SmartCheck from Visual
Basic to use this feature. Go to Source is available from the Program
Error Detected window, and from any line in the Program Results window
that is associated with VB source code in the project you loaded before
running SmartCheck.
4. You can start and stop collecting information in the event log while
your program is running. This lets you reduce the size of your event
file, and see just the events for the part of the run you are trying to
debug. From SmartCheck, use the new toolbar button, or deselect Event
reporting on the Program menu to turn off logging. You can also control
reporting from the Program Error Detected window. Note: After you stop
event reporting, you may still see a few events in the Program Results
window if these events are needed to match up with events that occurred
while reporting was enabled. You can set the initial event reporting
state for your program on the Reporting tab of the Program Settings
dialog.
5. SmartCheck provides an API for starting and stopping event reporting
from within your program. The Event Reporting API can be used as a
straight API from C/C++ programs, or as a COM object from VB.
NMEVTRPT.dll is installed in the Windows System directory. The header
and import library files are in ERptAPI under the SmartCheck
installation directory (NMEvtRpt.lib, and NMEvtRpt.h). See Using the
Event Reporting API (AboutAPI.txt) in ERptAPI for details.
6. SmartCheck collects version information and the complete filename of
every module loaded by your program. Choose Version Information from
the View menu to see the information. Click on column headers to sort
in ascending order. You can also print a report of version information.
7. SmartCheck records environment information about your session in a
new Session Information event. To see this event, use View-Specific
Events, and check Comments. Session information is the first event
after your program starts. SmartCheck also logs your username, machine
name and run date in the Program Transcript window.
8. SmartCheck version 6 adds analysis for VB runtime errors resulting
from a system exception (such as Access Violation or GPF) or C++
exception inside a property put or get, or method call. Previously,
these errors tended to result in VB runtime error 80010108, with no
information on the source of the problem. Also included is analysis for
C++ or system exceptions while loading a DLL (VB runtime error 48).
Previously, this resulted in a vague analysis such as "Invalid access
to memory location. The new analyzers tell you the details of the
exception, and where it occurred.
9. Help for detected errors includes more Visual Basic code samples.
10. You can turn off immediate reporting of detected errors from the
Program Error Detected window. This is useful if SmartCheck is
detecting lots of errors, and you want to continue your run without
acknowledging each error as it is detected.
11. On the View menu, View suppressed errors lets you display
suppressed errors in the Program Results window, or remove them from
the view. This option only applies to errors you suppressed yourself,
and not to errors suppressed by the standard libraries distributed with
SmartCheck.
12. SmartCheck's new compliance report makes it easier for you to see
just the API calls your program makes that aren't supported by a
particular operating system. Compliance reporting moved from the
Program menu to the View menu.
13. A new setting, Overwrite memory with fill pattern upon
deallocation, was added to Advanced Error Detection settings. When a
program runs under SmartCheck, Windows NT can overwrite freed memory
with a fill pattern to increase the chance that a General Protection
Fault will occur if the program uses the freed memory. In previous
versions of SmartCheck, this behavior always occurred. As a result,
some programs that continued to use freed memory appeared to work
outside of SmartCheck, but failed to run under SmartCheck. Since the
error was often in third party code the user could not control, it was
not possible to continue checking the application under SmartCheck
without modifying the Windows NT Registry. Now you determine whether or
not Windows NT overwrites memory after it is freed. To perform the most
rigorous check on your program, enable the Overwrite memory with fill
pattern setting. This setting applies only to Windows NT.
14. SmartCheck remembers dlls and ocxs that your program loads
dynamically. This makes it easier for you to do selective checking
because you don't need to manually enter the names of dynamically
loaded modules in the Files to check tab of the Program Settings
dialog.
15. You can select where SmartCheck stores its temporary files on the
Program Information tab of the Program Settings dialog.
16. SmartCheck appears on a new DevPartner menu and toolbar in the VB
IDE. New releases of NuMega DevPartner for Visual Basic products such
as CodeReview, TrueTime, and FailSafe also appear on the DevPartner
menu when they are installed.
17. SmartCheck can check programs compiled with NuMega TrueTime 1.1
instrumentation, but cannot check programs compiled with TrueTime 1.0.
18. See the section on Bug Fixes for the most significant bug fixes.
Reporting Problems and Suggestions
==================================
NuMega Technical Support can assist you with all your technical
problems, from installation to troubleshooting. To contact Technical
Support:
World Wide Web www.numega.com Go to Support
E-Mail tech@numega.com
Fax 603-578-8401
Telephone 888 NUMEGA-S (U.S. and Canada)
1-603-578-8100 (International)
Telephone support is available as a paid Priority Support Service from
8:30 AM to 5:30 PM EST, Monday through Friday. Have your product
version and serial number ready. Technical Support handles installation
and setup issues free of charge.
Problem reports should include:
- Product name and version
- Product serial number
- System configuration (CPU, RAM, OS)
- Detailed problem description (include exact error message text)
- How to reproduce problem
- Options used in compiling and linking
- Your SmartCheck error detection settings
Installation Prerequisites
==========================
* PC-compatible Intel 486 system or above
* Microsoft Windows NT 3.51 and 4.0.
Refer to www.numega.com for the latest on Windows NT 5.0 support.
* Microsoft Windows 98
* Microsoft Windows 95
* RAM: 32 MB minimum
* Disk: 13.8 MB for full installation
*
Microsoft Visual Basic 5.0 or Visual Basic 6.0 must be installed prior
to SmartCheck if you want Setup to install Visual Basic IDE
integration. VB 5.0 SP1, SP2 and SP3 are supported. We recommend VB 5.0
SP3 or above for the best SmartCheck performance.
Installation
============
To install SmartCheck, run SETUP.EXE, and the setup wizard will guide
you to completion.
Removing An Installation
========================
To remove this product, select Settings from the Windows Start menu.
Select Control Panel, then run Add/Remove Programs. Files that were
created after installation will not be removed automatically.
Frequently Asked Questions
==========================
How can I use SmartCheck to check my out-of-process server?
-----------------------------------------------------------
SmartCheck automatically detects errors in your program executable and
any in-process servers. Since SmartCheck only sees one process, it does
not automatically check out-of-process servers. To detect errors in
out-of-process servers started by your program, start multiple,
concurrent SmartCheck sessions, one for each EXE to be checked, and one
for your program. Start out-of-process servers from stand-alone
SmartCheck sessions, and enter -Embedding as a command line option on
the Program Info tab of the Program Settings dialog. Read Checking
Multiple ActiveX Executables in Help for detailed instructions.
Why does SmartCheck only work with compiled (non p-code) executables?
Why can't I check my program while running under the Visual Basic
development environment debugger?
--------------------------------------------------------------------
When you build a Visual Basic 5.0 program in native mode with debug
information, SmartCheck can treat the program much like a Visual C++
program. The debug information allows SmartCheck to correlate program
addresses with a source file and line number.
When built as a p-code executable, there is no debug information to
work from. You can run Visual Basic 5.0 p-code executables under
SmartCheck, and some features will still work. However, SmartCheck
will not be able to show you source code for errors and events, and
other SmartCheck features are not fully supported for p-code.
When debugging a program in the Visual Basic IDE, the program is
running in p-code mode. In addition, there are other critical
differences in the way the code is executed. The result is that
SmartCheck cannot operate on an executable while it is being debugged
from the Visual Basic IDE.
How do I get more information when SmartCheck doesn't diagnose a
problem?
--------------------------------------------------------------------
By default, SmartCheck doesn't show errors occurring in modules that
don't have debug information. This includes the Visual Basic run time
library DLL (MSVBVM50.DLL for VB 5, MSVBVM60.DLL for VB 6). Additional
information about a bug in your program can be often be found by
observing the invalid parameters and API failures that occur in the VB
run time library.
To see these errors, go to Error Detection settings (Program | Settings
| Error Detection), click Advanced and select "Report errors even if no
source code is available," and deselect "Suppress system API and OLE
calls." After your run, use Specific Events on the View menu to display
additional events such as API calls from C, C++ and System code.
If you do this, you'll likely see many OLE interface leaks at the end
of your program. Some of these are from the OLE interfaces that
represent Visual Basic controls. Others are from the OLE system DLLs.
Bug Fixes
=========
1. This version of SmartCheck supports checking Microsoft Internet
Explorer 4 and Outlook Express, as well as programs that use fibers.
1. If your project group contains an OCX and test program to use the
OCX, it is no longer necessary to use VB's "Make project group" to
build the project group before running SmartCheck.
2. Non-English language versions of Microsoft Visual Basic can now
launch SmartCheck.
3. When you print event files, long lines are no longer truncated.
4. If you run low on virtual memory, SmartCheck notifies you.
5. SmartCheck remembers the last position and size of all its windows.
It remembers the maximized state of all windows except the Program
Results window.
Known Anomalies
===============
1. Applications and tools using a DLL compiled with some versions of
Shrinker (from Blink Inc.) won't run under SmartCheck, and cause
Shrinker to display an error. Shrinker issued a fix for this problem,
so contact your tool vendor for a new version of each tool compiled
with the new Shrinker. If you are using Stamina, from Microdexterity, a
fix is available. If your vendor does not have the new version of
Shrinker yet, a workaround is to use SmartCheck Program Settings-Files
to Check to disable the DLL or OCX mentioned in the Shrinker dialog.
2. If your program uses a type library to declare win32 APIs, the VB
compiler generates code that is identical to the C compiler. By
default, these calls are not collected or displayed in SmartCheck
program results. To see a function declared in a typelib, select
Settings from the Program menu before running your program, press
Advanced on the Error Detection tab, and deselect "Suppress system API
and OLE calls." Run your program. After the run, use Specific Events on
the View menu to select API calls from C, C++ and System Code.
3. There is a known bug in Visual Basic 5.0 that can cause an invalid
page fault on closing the IDE due to the way Visual Basic 5.0 destroys
command bars during shut down. If you experience this problem, refer to
Microsoft Knowledge Base Article ID Q167213, for workarounds
(http://www.microsoft.com/kb/articles/q167/2/13.htm). This problem is
corrected in Visual Basic 5.0 SP2.
4. Microsoft Script Debugger causes SmartCheck analysis of Visual Basic
run-time errors to fail. The SmartCheck Program Transcript window
contains the message "Outer event not found". A similar problem may
occur with any multithreaded program where the other threads keep
running (and generating events) during SmartCheck analysis.
5. Abnormal termination of a program compiled with VB 5.0 may cause
instability in SmartCheck and Windows 95. If this occurs, upgrade to
Visual Basic Service Pack 3 (http://www.microsoft.com/vbasic). Until
you upgrade, avoid terminating your program with SmartCheck's End
command. This problem does not occur under Windows NT. We have noticed
a similar problem with abnormal termination of a program compiled with
VB 6.0 under Windows 98. If you experience this problem, check with
Microsoft for service packs for VB 6.0 or Windows 98, and avoid
terminating your program with the End command on the SmartCheck Program
Error Detected window.
6. Some users have reported that a program compiled by SmartCheck was a
different size and had different UserControl properties than what they
set in the IDE. After this occurs, the only way to create a good EXE is
to exit and restart VB. We can duplicate this problem without
SmartCheck, and have confirmed with Microsoft that this is a problem in
Visual Basic.
7. When displaying parameters of type Date, the event pane correctly
decode and shows them (e.g., "1-1-97"). However, the underlying data
type of a Date is a double. The details pane displays all Date
parameters as double values.
8. If a VB intrinsic function takes an unlimited number of comma
delimited parameters, SmartCheck will only log/show the parameters that
are required. For example: write #1, var1, var2, var3, "abc", var4 -
Only the first argument (the file number --> #1) is required, and so
it's the only one SmartCheck can log.
9. If the source code shown for an event appears to be off by several
lines, you may be running a project that was initially created in VB4.
The solution is to load the affected form files in VB5, make a change
(e.g., add a blank line, then delete it), and then save the project.
The next time VB5 rebuilds the program, the source lines should be
correct.
10. If your project is already loaded in SmartCheck from VB, and you
change SmartCheck Settings from the VB DevPartner menu, the changes do
not take effect immediately. Either close and reload your project in
SmartCheck, or display the Settings dialog from SmartCheck activate the
new settings.
Technical Notes
===============
1. SmartCheck detects resource leaks and memory problems in C and C++
components, but these types of problems do not occur in Visual Basic
code. SmartCheck does monitor memory allocation leaks from an OCX or
DLL which is explicitly calling one of the memory allocation APIs.
This also includes GDI resources (brushes, pens, bitmaps) which you or
your OCXs may be using. This version of SmartCheck detects object leaks
in C and C++ components, but does not detect them in Visual Basic code.
2. SmartCheck does not track the VB global object or VB debug object.
Some Visual Basic commands such as Load, Unload and Debug.Print are
actually methods of these objects, and are not tracked by this version
of SmartCheck.
3. SmartCheck supports all of the built-in Visual Basic controls, and
all of the controls that come with the Visual Basic 5.0 Enterprise
edition. SmartCheck also has visibility into third-party OCXs that use
IDispatch::Invoke to communicate with Visual Basic. SmartCheck does not
log events fired by controls that use the "dual interface" mechanism.
In addition, SmartCheck doesn't show the interactions from OLE objects
that aren't "controls". These are objects that you can't drop onto a
form (e.g., "Excel.Worksheet").
4. Checking Third Party Controls - By default, SmartCheck only shows
you errors for modules that have source code and debug information
available. To check third party controls, press Advanced on the Program
Settings Error Detection tab. Check "Report errors even if no source
code is available."
5. Looking Under the Hood of Visual Basic - By default, SmartCheck
filters out events that you are not aware of when you write VB code. To
see the system interactions under your VB code, select Settings from
the Program menu, press Advanced on the Error Detection tab, and
deselect "Suppress system API and OLE calls." Run your program. When
the program results window is displayed, use Specific Events on the
View menu to show additional details such as API calls from C, C++ and
System code, and OLE method calls. You'll see many APIs and OLE methods
that aren't documented, such as EVENT_SINK_Release, ThunRTMain, and
__vbaChkstk. These APIs and others like them are the inner workings of
the Visual Basic run time library.
4. To turn off reporting of OnError statements, suppress this function
in MSVBVM50.DLL. Open your program in SmartCheck, and select Settings
from the Program menu. Go to the Error Suppression tab, select the
suppression library for your program, and click Add API Function.
Select MSVBVM50.DLL from the Select API dialog, and select OnError from
the list of functions.
5. If you use Data Access Objects, you can make your program run faster
under SmartCheck by enabling the DAO350 Suppression Library. Open your
program in SmartCheck, and select Settings from the Program menu. On
the Error Suppression tab, select the DAO350.DLL suppression library.
6. To turn off checking of Data Access Objects, run your program once
under SmartCheck. Then select Settings from the Program menu. Go to the
Files to Check tab, and deselect DAO350.DLL from the file list.
7. Programs instrumented with NuMega FailSafe contain error handlers,
so SmartCheck will not notify you when run-time errors occur. To
analyze errors trapped by FailSafe, load your program under SmartCheck,
choose Settings from the Program Menu, and enable Perform Analysis of
Handled Visual Basic Runtime Errors on the Reporting tab. After you run
your program, display Handled Errors (Specific Events on the View
menu).
8. SmartCheck uses a 16k event buffer to determine the cause of a
runtime error. If the source code line that SmartCheck needs to know
about is too far away to be in the buffer, SmartCheck will not analyze
the error.
9. You can run C/C++ modules instrumented with BoundsChecker FinalCheck
(BoundsChecker 5.0 or above, Visual C++ edition only) under SmartCheck.
However, you must relink with the version of bcinterf.lib that shipped
with BoundsChecker 5.03 (or above).
10. Startup performance and alternate DEFAULT.DAT files
------------------------------------------------------
If your program takes an unusually long time to start under SmartCheck,
you may want to use one of the alternate DEFAULT.DAT files shipped with
SmartCheck. First, backup your existing copy of DEFAULT.DAT by renaming
DEFAULT.DAT (in the SmartCheck DATA directory) to DEFAULT.BAK. Then,
copy one of the alternate DEFAULT.xxx files to DEFAULT.DAT:
Microsoft C/C++ (includes Symantec) DEFAULT.MSC
Borland C/C++ (include Watcom) DEFAULT.BOR
Borland Object Pascal (Delphi 2.X) DEFAULT.DPH
All of the above DEFAULT.ALL
NOTE: By default, SmartCheck installs DEFAULT.MSC
-----------------------------------------------------------------
Copyright 1997, 1998 NuMega Lab, Compuware Corp.
August 1998
readmevb.txt
2009-09-15
Perl语言编程第三版 中文版
Perl是一门自由且功能强大的编程语言。自1987年初次登台亮相以来,它的用户数一直急剧膨胀。本书的第一版于1991年正式摆上书架,之后迅速成为这门语言无可争议的宝典。
本书不仅仅是一本关于Perl的书籍,更是一本独一无二的开发者自己介绍该语言及其文化的书籍。Larry Wall是Perl的开发者,并就Perl的未来发展方向提出了自己的看法。
Tom Christiansen是Perl最早的几个拥护者之一,也是少数几个在错综复杂的Perl中游刃有余的人之一。Jon Orwant是《Perl Journal》的主编,该杂志把Perl社区组合成了一个共同的论坛,以进行Perl新的开发。
任何Perl书籍都会介绍Perl函数的语法,但是只有这本权威指南包括这门语言的所有内幕。任何Perl书籍都会列出许多的特性,但是只有这本书会告诉你为什么会有这些特性以及如何自然地使用它们。任何Perl书籍都可能有一个头衔,但是只有这本书会被所有Perl程序员动情地称之为“骆驼书”。
从最初被当作一种在跨平台环境中书写可移植工具的高级语言开始,Perl就已经被广泛地认为是一种工业级的强大工具,可以在任何地方用来完成你的工作。Perl特别适合系统管理和Web编程。Perl实际上已经被所有Unix(包括Linux)捆绑在一起作为标准部件发布,而且也被广泛用于Microsoft Windows和几乎所有其他操作系统。Amiga、BeOS、VMS、MVS和 Apple Macintosh等也只是Perl已经完成移植的平台的一小部分。
本书有哪些新的内容呢?老实说几乎所有都是新的。本书第三版涵盖了新的Perl 5.6版本,不仅完全重新组织了一遍,而且还用无数个例子强化了这些内容。大多数现有的主题都是从头重写的,如面向对象编程和正则表达式,并添加了许多全新的章节,包括描述、pod、Unicode、线程、编译和Perl本质。
既是圣经,又是百科全书,也是年鉴,这就是本书的内涵。
前言
第一部分 概述
第一章 Perl概述
从头开始
自然语言与人工语言
一个平均值例子
文件句柄
操作符
控制结构
正则表达式
列表处理
你不知道但不会伤害你的东西(很多)
第二部分 细节
第二章 集腋成裘
原子
分子
内置的数据类型
变量
名字
标量值
环境
列表值和数组
散列
typeglob和文件句柄
输入操作符
第三章 一元和二元操作符
项和列表操作符(左向)
箭头操作符
自增和自减操作符
指数运算
表意一元操作符
绑定操作符
乘号操作符
附加操作符
移位操作符
命名一元操作符和文件测试操作符
关系操作符
相等操作符
位操作符
C 风格的逻辑(短路)操作符
范围操作符
条件操作符
赋值操作符
逗号操作符
列表操作符(右向)
逻辑与、或、非和异或
Perl中没有的C操作符
第四章语句和声明
2009-08-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人