Book Excerpt: Using Windows Applications with JDS
You have now become conversant with the core programs of the Java Desktop System. Although you can see the power of the many Linux applications available on JDS, you may still have a need for software used on Windows computers. JDS can run Windows programs by using:
Remote Desktop Protocol (RDP) clients, which connect to a Windows Terminal Server
Native Linux Windows emulators
Virtual servers, which run on the GNOME desktop
We examine each of these, with the greatest focus on the use of native Linux Windows emulators.
In the past, people who had conflicts between software and operating systems would partition their hard drives and dual boot. If they needed to use Visio for drawing flow charts, they would boot into Windows, but if they ran a suite of Enterprise Applications, they would boot back into Linux. People consider dual booting tedious and unproductive.
Several solutions assist people to use Windows and Linux software together; most of these are found on the Linux side. In this chapter, we introduce you to the major solutions and offer installation details for a promising and popular solution: CodeWeavers' CrossOver Office.
We define emulation as a process of imitation (simulation) of one computer system by another. The imitating program, or device (emulator), accepts the same data, executes the same programs, and achieves the same results as the system it imitates.
JDS comes with a built-in client that can connect to a Microsoft server to run Windows applications. Known as the RDP, the protocol was developed to provide remote display, keyboard, and mouse connections and print streams over a network for Windows-based applications running on a Windows server. The print streams, keyboard input, and mouse clicks transmit over the network between the server and the terminal emulation software. Each user logs on and sees only his or her individual session, which the server manages transparently, independent of any other client session.
The JDS client runs with the X Window System and the GNOME desktop. Microsoft Terminal Services delivers the Windows desktop and the Windows-based applications to a wide variety of desktops, including those that normally do not run Windows. Through emulation, this allows the same set of applications to run on diverse types of desktop hardware.
Figure 1 shows the native JDS client, which connects to a Windows Terminal Server (WTS). This allows you to run your Linux desktop and Windows programs without having to dual boot. Figure 2 depicts the architecture that allows JDS to run WTS applications.
WTS is used in large organizations, as its costs run very high. Aside from the cost of the hardware, Windows Server licenses, and Client Access Licenses (CALS), each user requires a WTS license, and each application requires licenses for people wanting to run the application. The value proposition of RDA sits with the user who uses a thin client solution.
Other solutions we discuss in this chapter provide access to Windows applications for far less money for individual users and provide and perform just as well.
WINE is the most used open source solution to run Windows software with JDS. WINE is an open source implementation of the Windows Application Program Interface (API). Windows applications run on WINE (the interface), which in turn runs on Linux. This produces an environment in which JDS and other Linux systems can run Windows applications side by side with native Linux applications.
For example, WINE allows you to share your desktop space between MS Word and Evolution, overlapping their windows, launching them, and minimizing them utilizing the desktop and window management features you've been using. The cutting and pasting tools, for instance, move text between the two applications in the same manner as they do between two JDS applications.
Since WINE is written in Linux code, it runs natively in JDS; therefore it consumes little memory, and it doesn't require a major investment. Windows' software performance is not diminished. In fact, some people report that a Windows application, running over WINE, offers a more responsive experience than the same application running on the Windows operating system, because Linux is such an efficient multitasking operating system.
WINE does not come bundled with JDS. If you want to use it, you have to add it. You can install it from its source code and run it from the command line (open a Terminal window, as shown in Chapter 5) or through one of the available commercial implementations.
Not all applications that run on Windows run on WINE. Many applications need special support, and WINE is being upgraded over time to support more and more of them. Currently, the most popular applications that can run on JDS, while utilizing WINE, are MS Office applications, Lotus Notes, Photoshop, Quicken, and Visio.
WINE does not require Microsoft Windows to operate, as it is an alternative implementation consisting of 100 percent Microsoft-free code that operates through the Linux kernel. WINE provides both a development toolkit (Winelib) for porting Windows source code to JDS and a program loader, allowing many unmodified Windows programs to run on JDS. However, running proprietary Windows applications does require a license from the software vendor--it's illegal to take an unlicensed copy of the software and install it on your system, whether you're using WINE or anything else.
Support for running many of the most popular Win 95/98, NT/2000/XP, Windows 3.1 and DOS programs
X11-based graphics display, including remote display to other systems running X
DirectX support for games
Support for sound and alternative input devices
Printing through a PostScript interface driver to standard Unix/Linux PostScript print services
Support for serial modem devices
Support for scanners, CD writers, and more
Now, let's look at the commercial implementations of WINE and other solutions that, like WINE, do not require dual booting.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- SUSE LLC's SUSE Manager
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- Doing for User Space What We Did for Kernel Space
- SuperTuxKart 0.9.2 Released
- Parsing an RSS News Feed with a Bash Script
- Google's SwiftShader Released
- Rogue Wave Software's Zend Server
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide