Language Selection

English French German Italian Portuguese Spanish

Ode to Machine Architecture

Filed under
Hardware
Software

I have been writing lately about the importance of learning the underlying tenants of computing if you are going to be a great programmer, and in particular some machine language and computer architecture.

It typically does not make a difference which architecture you learn, or which machine language, as long as the architecture and machine language can illustrate the basic concepts of computing to a level that is useful in future studies of operating systems design and compiler theory, helping you to under stand issues like cache management, interrupt handling and I/O.

This blog entry, however, is not going to talk about those issues. Instead it will talk about a few instances in my life where knowing assembly language helped me immensely in solving problems.

rest here




Architecture Does Matter

People seemed to like my blog yesterday about how the knowledge of assembly and machine language improved my programs, or the programs of people around me.

Today I would like to show people how simply understanding a little about the architecture of the machine and operating system, even without knowing assembly language, can improve program performance. Likewise the study of algorithms and computer techniques.

rest here

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

Security Leftovers

10 hot Android smartphones that got price cuts recently

With numerous smartphone getting launched each month, brands always adjust prices to give slightly competitive edge to older smartphone models and also to clear inventories. Here are 10 smartphones that got price cuts recently. Read more

Debian and Ubuntu News

  • Debian Project News - July 29th, 2016
    Welcome to this year's third issue of DPN, the newsletter for the Debian community.
  • SteamOS Brewmaster 2.87 Released With NVIDIA Pascal Support
  • Snap interfaces for sandboxed applications
    Last week, we took a look at the initial release of the "portal" framework developed for Flatpak, the application-packaging format currently being developed in GNOME. For comparison, we will also explore the corresponding resource-control framework available in the Snap format developed in Ubuntu. The two packaging projects have broadly similar end goals, as many have observed, but they tend to vary quite a bit in the implementation details. Naturally, those differences are of particular importance to the intended audience: application developers. There is some common ground between the projects. Both use some combination of techniques (namespaces, control groups, seccomp filters, etc.) to restrict what a packaged application can do. Moreover, both implement a "deny by default" sandbox, then provide a supplemental means for applications to access certain useful system resources on a restricted or mediated basis. As we will see, there is also some overlap in what interfaces are offered, although the implementations differ. Snap has been available since 2014, so its sandboxing and resource-control implementations have already seen real-world usage. That said, the design of Snap originated in the Ubuntu Touch project aimed at smartphones, so some of its assumptions are undergoing revision as Snap comes to desktop systems. In the Snap framework, the interfaces that are defined to provide access to system resources are called, simply, "interfaces." As we will see, they cover similar territory to the recently unveiled "portals" for Flatpak, but there are some key distinctions. Two classes of Snap interfaces are defined: one for the standard resources expected to be of use to end-user applications, and one designed for use by system utilities. Snap packages using the standard interfaces can be installed with the snap command-line tool (which is the equivalent of apt for .deb packages). Packages using the advanced interfaces require a separate management tool.
  • Ubuntu 15.10 (Wily Werewolf) Reaches End Of Life Today (July 28)
  • Ubuntu MATE 16.10 Yakkety Yak Gets A Unity HUD-Like Searchable Menu
    MATE HUD, a Unity HUD-like tool that allows searching through an application's menu, was recently uploaded to the official Yakkety Yak repositories, and is available (but not enabled) by default in Ubuntu MATE 16.10.

Tablet review: BQ Aquaris M10 Ubuntu Edition

As employees have become more and more flexible in recent years thanks to the power and performance of mobile devices, the way we work has changed dramatically. We frequently chop and change between smartphones, tablets and laptops for different tasks, which has led to the growth of the hybrid market – devices such as Microsoft’s Surface Pro 3 and Apple’s iPad Pro – that provide the power and functionality of a laptop with the mobility and convenience of a tablet. Read more