Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Move to old-code

svn path=/old-code/; revision=156221
  • Loading branch information...
commit d6f7366bb915f14e5e0db5932b881d0203464b0d 1 parent 5442fe4
@migueldeicaza migueldeicaza authored
View
3  faq/README
@@ -0,0 +1,3 @@
+This is the new FAQ, the idea here is to keep documents in easy to digest chunks,
+and produce the HTML that is later published into the website.
+
View
2  faq/topics/compatibility
@@ -0,0 +1,2 @@
+* Compatibility
+
View
38 faq/topics/enterprise
@@ -0,0 +1,38 @@
+* EnterpriseServices
+
+<p>Q: Does Novell have intentions on providing EnterpriseServices?
+
+ <p>At this point it seems like EnterpriseServices on the
+ Windows world will remain only a backwards-compatible API, and
+ developers will be encouraged to move to the new Indigo
+ platform.
+
+ <p>So at this point, it is not likely that we will spend any
+ cycles supporting EnterpriseServices on Mono.
+
+<p>Q: What about the future?
+
+ <p>One possible implementation path would be to implement
+ first Indigo, or something equivalent to Indigo, and then
+ build on top of this the API exposed by EnterpriseServices.
+
+<p>Q: Is anyone working on EnterpriseServices?
+
+ <p>At various times various volunteers have tried to implement
+ the EnterpriseServices API, but so far nobody has completed
+ such a task.
+
+<p>Q: I really need something like EnterpriseServices, what can I do?
+
+ <p>You could either join an existing effort to implement
+ EnterpriseServices, or you might want to look at different
+ solutions available.
+
+ <p>You might also want to look at third party products on this
+ space:
+
+ <ul>
+ <li><a href="http://www.zeroc.com">ZeroC</a> sells Ice
+ distributed platform, although it might not do everything you
+ want.
+ </ul>
View
41 faq/topics/jit
@@ -0,0 +1,41 @@
+* JIT engine
+
+<p>What platforms are currently supported by the JIT?
+
+ <p>The JIT currently supports the following platforms:
+
+ <p>32 bit platforms:
+
+ <ul>
+ <li>x86
+ <li>SPARC
+ <li>PowerPC
+ <li>S390
+ </ul>
+
+ <p>64 bit platforms:
+ <ul>
+ <li>SPARC v9.
+ <li>x86-64.
+ </ul>
+
+ <p>Mono comes with an interpreter as well that works on the
+ above platforms and in addition on the StrongARM and HPPA
+ architectures. The interpreter is not as fast as the JIT
+ engine.
+
+<p>Will you support dynamic recompilation of "hot" methods?
+
+ <p>Although this is not currently on the plans, the various
+ bits that would be necessary to support dynamic recompilation
+ of hot methods is being worked on:
+
+ <ul>
+ <li>A new method-call trampoline system that will
+ allow us to replace the method on the fly.
+
+ <li>A non-intrusive runtime profiler (available <a
+ href="http://lists.ximian.com/archives/public/mono-devel-list/2004-August/007566.html">here</a>)
+ that will allow the identification of hot methods with
+ minimal overhead.
+ </ul>
View
62 faq/topics/porting
@@ -0,0 +1,62 @@
+* Porting
+
+<p>Q: Are Mono binaries compatible with binaries produces for .NET?
+
+ <p>Mono binaries are compatible with the binaries produced by
+ tools that target the .NET Framework.
+
+ <p>There is one limitation though: the .NET Framework supports
+ an incremental compilation mode. This file format is not
+ currently supported by Mono (The Mono runtime will report that
+ the "#~ heap is not supported). To fix this, you should
+ recompile your application without the incremental feature
+ turned on.
+
+<p>Q: I have a Visual Studio solution, how can I compile it on Unix using Mono?
+
+ <p>Use the <a
+ href="http://forge.novell.com/modules/xfmod/project/?prj2make-sharp">prj2make</a>
+ software: this software will produce makefiles.
+
+ <p>After running prj2make, type `make' to build your programs.
+
+<p>Q: Are there plans to support the incremental file format?
+
+ <p>Yes, it is on our list of pending tasks.
+
+ <p>Using the incremental mode also produces larger executables
+ than you need, so you might want to turn it off anyways.
+
+<p>Q: Do I need to recompile my applications with the Mono compiler to run them on Linux/MacOS/Solaris?
+
+ <p>There is no need to recompile your applications with the
+ Mono compilers to target Mono. You can just copy your
+ binaries from a Windows machine to a Linux machine to run the
+ executable.
+
+<p>Q: Will you support the PDB debugging file format?
+
+ <p>The PDB file format is not documented, and it is hence not
+ possible for Mono to consume debugging information that comes
+ from the PDB format.
+
+ <p>If debugging information for stack traces, or using the
+ Mono debugger is important to you, you will have to recompile
+ your applications using the Mono compilers.
+
+<p>Q: Will you support the an API that is very windows-specific?
+
+ <p>A: This is decided on a case-by-case basis. Some
+ APIs that are specific to Windows are worth supporting in
+ Mono, to ensure both-way compatibility (for example, file
+ sharing modes).
+
+ <p>But we can not emulate every possible Win32-ish API on
+ Linux, as not only it might not make sense to emulate it, but
+ we might also not provide the sensible default for the
+ particular domain of your application.
+
+ <p>So in these cases it is much better to adapt your
+ application to take advantage of Windows features on Windows,
+ and Linux features on Linux.
+
View
62 faq/topics/security
@@ -0,0 +1,62 @@
+* Security
+
+<p>Q: WebRequest.Create("https://www.anywhere.com"); throws an exception
+
+ <p>That's probably because you do not trust the site you're connecting
+ to. Note that a default installation of Mono doesn't trust anyone!
+
+ <p>You can confirm this by using the <a href="http://svn.myrealbox.com/source/trunk/mcs/class/Mono.Security/Test/tools/tlstest/tlstest.cs">tlstest.exe</a>
+ tool.<code>
+ <br>mcs tlstest.cs /r:System.dll /r:Mono.Security.dll
+ <br>mono tlstest.exe https://www.anywhere.com</code>
+
+ <p>There are two alternatives to solve this problem:
+ <ul>
+ <li>Implement a <code>ICertificatePolicy</code> class. An
+ example is available in the <code>tlstest.cs</code> source
+ code. By doing this you can override the normal results of
+ the certificate validation (e.g. accepting an untrusted
+ certificate). However you are now responsible of applying
+ your own trust rules for your application.
+
+ <li>Use the <code>certmgr.exe</code> tool (included in Mono)
+ to add the root certificates into the Mono <b>Trust</b> store.
+ Every SSL certificate signed from this root will then be
+ accepted (i.e. no thrown exception) for SSL usage (for all
+ Mono applications running for the user or the computer -
+ depending on the certificate store where the certificate was
+ installed).
+ </ul>
+
+
+<p>Q: Why is SSL using certificates ?
+
+ <p>SSL encrypts data - but encrypting data to an untrusted server
+ doesn't improve much security. You need to know who is on the other
+ side of the socket! (e.g. think about a man-in-the-middle attack
+ between you and your bank).
+
+ <p>SSL use X.509 certificates for the purpose of binding a public key
+ with an entity (in this case the web server). The server gets it's
+ certificate from a certificate authority (CA) who certify that the
+ key belongs to it's owner. Finally you must <b>trust</b> that CA to
+ do it's job properly.
+
+
+<p>Q: Why doesn't Mono includes root certificates from X, Y and Z ?
+
+ <p>There are two main reasons not to include "defaults" root
+ certificates in Mono.
+
+ <ol>
+ <li>Digital certificates are, like many digital files,
+ copyrightable. This means that <b>there are</b> restrictions
+ on how the roots certificates can be distributed.
+
+ <li>We aren't in the business to decide on <b>who <u>you</u>
+ are going to trust</b>. Certificates Authorities exists all
+ around the world. The ones best suited to you aren't
+ necessarily the ones best suited for everybody else and having
+ a terribly long list of "trusted" roots isn't a very secure
+ solution.
+ </ol>
View
21 faq/topics/wse
@@ -0,0 +1,21 @@
+
+
+* Web Services Enhancements
+
+<p>Where can I get Web Services Enhancements (WSE) for Mono?
+
+ <p>A: WSE is not available for Mono, and currently we do not
+ have plans on implementing the WSE.
+
+ <p>There are two implementations of WSE today: WSE1 and WSE2,
+ they have different APIs and they are regarded as stop-gap
+ solutions until Indigo comes out.
+
+ <p>In addition, there is also rumor that a WSE3 implementation
+ would come out, and it is not clear whether the API will be
+ compatible or not.
+
+ <p>At this point the Mono team is not currently looking at
+ implementing any of these APIs, but we would welcome any
+ contributions in this area.
+
Please sign in to comment.
Something went wrong with that request. Please try again.