Search Results

Search found 16616 results on 665 pages for 'home sharing'.

Page 214/665 | < Previous Page | 210 211 212 213 214 215 216 217 218 219 220 221  | Next Page >

  • How can I make Ubuntu One work on windows? It says "File Sync starting..." forever

    - by morph
    I'm using Ubuntu One 2.0.1 on Windows 7 64-bit, and I want to sync my files but the application refuses to. It says "File Sync starting" forever. I left it from morning to evening and it's still the same. Also, I tried reinstalling and deleting registry files then installing again but this didn't help. Im sharing my Pictures, Music and Documents folders. In Ubuntu, sync is working ok. I searched Google and found many people having same problem without a solution.

    Read the article

  • VirtualBox - split partitioned VDI into separate VDIs

    - by mathematical.coffee
    I'm very new to VirtualBox. I set up an Arch Linux VM and a Ubuntu VM (Ubuntu host), both sharing the same .vdi like so (I had in my mind a dual-boot situation): VDI file (25GB) |- /dev/sda1: 5GB (Arch Linux) |- /dev/sda2: [Ubuntu] |- /dev/sda5 (swap, 1GB) |- /dev/sda6 Ubuntu /, 9GB |- /dev/sda7 Ubuntu /home, 10GB I've now realised that I don't want a dual-boot-type setup, I'd rather boot each machine independently (my initial thought was to share /home between Ubunto and Arch). So, my question: Can I split /dev/sda1 and /dev/sda2 each to their own .vdi files so I can use them as completely separate machines? I'd rather not have to re-install either Arch (because it took me ages to work it out!) or Ubuntu (because I've already done a few GB of updates and don't want to redo them). I haven't been able to find anything about this - most questions I see are about converting a .vdi to a partition on the host, or splitting a .vdi into multiple smaller files (that are not independent), or converting a partition on the host to a .vdi file. cheers.

    Read the article

  • Disable the Old Adobe Flash Plugin in Google Chrome

    - by The Geek
    If you’ve just updated to the Dev or Beta release of Google Chrome, you might have noticed that a special version of Adobe Flash is now integrated into the default distribution of Chrome. But what about your old plug-in? As it turns out, the old plug-in is generally still installed… but you can easily disable Chrome plug-ins in the latest version, so let’s get to work. Disable the Extra Flash Plug-in Head over to about:plugins and look through the list—you should notice two Shockwave Flash plugins. The first one should be in your Google Chrome installation folder, and has the filename gcswf32.dll. This is the NEW one, so don’t disable it! If you keep scrollling down, you’ll see the old one, with the file name NPSWF32.dll. This is the OLD plugin, and you can safely disable it. Of course, if you only use Chrome you could just completely uninstall Adobe Flash from your system by heading into Control Panel’s Uninstall Programs screen, and then finding and uninstalling Adobe Flash Player Plugin. The ActiveX version is for Internet Explorer. We’ve not done any testing to see if the old Flash plugin is even still active or not, but may as well disable it just to be sure, right? Similar Articles Productive Geek Tips How To Disable Individual Plug-ins in Google ChromeSearch for Install Packages from the Ubuntu Command LineStop YouTube Videos from Automatically Playing in ChromeHow To Disable Javascript in Adobe Reader and Patch the Latest Massive Security HoleStupid Geek Tricks: Compare Your Browser’s Memory Usage with Google Chrome TouchFreeze Alternative in AutoHotkey The Icy Undertow Desktop Windows Home Server – Backup to LAN The Clear & Clean Desktop Use This Bookmarklet to Easily Get Albums Use AutoHotkey to Assign a Hotkey to a Specific Window Latest Software Reviews Tinyhacker Random Tips DVDFab 6 Revo Uninstaller Pro Registry Mechanic 9 for Windows PC Tools Internet Security Suite 2010 Outlook Connector Upgrade Error Gadfly is a cool Twitter/Silverlight app Enable DreamScene in Windows 7 Microsoft’s “How Do I ?” Videos Home Networks – How do they look like & the problems they cause Check Your IMAP Mail Offline In Thunderbird

    Read the article

  • Mac OSX Server 10.6 DNS Issues

    - by dallasclark
    Hi, The server was upgraded from 10.5 from 10.6, during the upgrade the Reverse Zones were lost so I tried to recreate these but found that it's best to delete all zones, definitions and start again. So I've started again and Reverse Zones are appearing but I'm still having issues. I receive the following errors (if they help) 01-Nov-2010 12:52:01.254 client 192.168.1.52#57051: view com.apple.ServerAdmin.DNS.public: query (cache) 'server.dev.home.gateway/A/IN' denied 01-Nov-2010 12:59:24.487 client 192.168.1.52#52858: view com.apple.ServerAdmin.DNS.public: query (cache) 'earth.server.dev.home.gateway/A/IN' denied At the moment I have the following setup in the DNS 1.168.192.in-addr.arpa. Reverse Zone 192.168.1.100 Reverse Mapping MacPro-Server.local. server.dev. Primary Zone server.dev. Machine 192.168.1.100 earth.server.dev. Alias server.dev.

    Read the article

  • Upload to PPA succeeded but packages doesn't appear

    - by lorin
    I'm trying to upload packages to my PPA for the first time. I want to use the PPA for customized versions of the OpenStack Compute (nova) project, so I tried to do a test by uploading packages corresponding to the bexar release of this project (lp:nova/bexar), with a new version number and changelog entry. I signed the source packages using my OpenGPG key, which has been uploaded to the ubuntu keyserver: $ dch -v 2011.1-0ubuntu2-isi1 -D lucid "ISI bexar build #1" $ dpkg-buildpackage -s -rfakeroot -tc -D -k4C8A14AB When I tried to upload the files to the repository, it seemed to work (real email obscured): $ dput ppa:lorinh/ppa nova_2011.2~bzr663-1isi1_source.changes Checking signature on .changes gpg: Signature made Fri 11 Feb 2011 03:52:50 PM EST using RSA key ID 4C8A14AB gpg: Good signature from "Lorin Hochstein <lorin@...>" Good signature on /home/lorin/packaging/nova_2011.2~bzr663-1isi1_source.changes. Checking signature on .dsc gpg: Signature made Fri 11 Feb 2011 03:52:44 PM EST using RSA key ID 4C8A14AB gpg: Good signature from "Lorin Hochstein <lorin@...>" Good signature on /home/lorin/packaging/nova_2011.2~bzr663-1isi1.dsc. Uploading to ppa (via ftp to ppa.launchpad.net): Uploading nova_2011.2~bzr663-1isi1.dsc: done. Uploading nova_2011.2~bzr663-1isi1.tar.gz: done. Uploading nova_2011.2~bzr663-1isi1_source.changes: done. However, the packages aren't listed on my PPA page. If I try to upload again, I get the error: $ dput ppa:lorinh/ppa nova_2011.2~bzr663-1isi1_source.changes Package has already been uploaded to ppa on ppa.launchpad.net Nothing more to do for nova_2011.2~bzr663-1isi1_source.changes Am I supposed to do something next? How do I track down what wrong? As of this writing, it's been a day and a half since I've done the upload.

    Read the article

  • Out of space despite lots of free space remaining

    - by Kristian Thomsen
    When upgrading Ubuntu from 11.10 to 12.04 I discovered an unexpected problem. The upgrade was stopped because there wasn't enough free space for the installation. I managed to free some space and do the upgrade but now a prompt appears after logging in saying I'm out of space. This prompt asks me if I want to examine the problem. The "Disk Usage Analyser" is opened. In the top it says: Total filesystem capacity: 47.0 GB (used: 13.5 GB available: 33.4 GB) Folder -- Usage -- Size / -- 100% -- 12.5 GB usr -- 44.8 % -- 5.6 GB home -- 30.3 % -- 3.8 GB lib -- 13.0 % -- 1.6 GB var -- 9.1 % -- 1.1 GB boot 2.5 % 309.5 GB and a lot of small contributors like: etc, opt, sbin, bin etc. I do not really understand this problem since the analyser in the top says that I have 33.4 GB left in this file system. What can I do to make Ubuntu use the remaining space? Running df -i in the terminal gives: Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda7 610800 576874 33926 95% / udev 213451 563 212888 1% /dev tmpfs 218524 486 218038 1% /run none 218524 3 218521 1% /run/lock none 218524 7 218517 1% /run/shm /dev/sda8 2264752 16371 2248381 1% /home What does this mean?

    Read the article

  • Debuild fails to make package for bluelog-1.04

    - by Dean Howell
    When trying to build a package for bluelog, Debuild give several errors. In the past, I've used checkinstall to quickly build crude packages. I am now trying to do it the right way and upload to a PPA. Bluelog can be found here: http://www.digifail.com/software/bluelog.shtml Here is the output from debuild; dpkg-buildpackage -rfakeroot -D -us -uc dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor): -D_FORTIFY_SOURCE=2 dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2 dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor): -Wl,-Bsymbolic-functions -Wl,-z,relro dpkg-buildpackage: source package bluelog dpkg-buildpackage: source version 1.0.4-0ubuntu1 dpkg-buildpackage: source changed by Dean Howell <dean@unknown> dpkg-source --before-build bluelog dpkg-buildpackage: host architecture amd64 fakeroot debian/rules clean dh clean dh_testdir dh_auto_clean make[1]: Entering directory `/home/dean/Launchpad Builds/bluelog/bluelog' rm -rf bluelog www/cgi-bin/* *.o *.txt *.log *.gz *.cgi make[1]: Leaving directory `/home/dean/Launchpad Builds/bluelog/bluelog' dh_clean dpkg-source -b bluelog dpkg-source: warning: Version number suggests Ubuntu changes, but Maintainer: does not have Ubuntu address dpkg-source: warning: Version number suggests Ubuntu changes, but there is no XSBC-Original-Maintainer field dpkg-source: info: using source format `3.0 (quilt)' dpkg-source: info: building bluelog using existing ./bluelog_1.0.4.orig.tar.gz dpkg-source: error: cannot represent change to bluelog/Builds/bluelog/bluelog/debian/bluelog/usr/bin/bluelog: binary file contents changed dpkg-source: error: add Builds/bluelog/bluelog/debian/bluelog/usr/bin/bluelog in debian/source/include-binaries if you want to store the modified binary in the debian tarball dpkg-source: error: unrepresentable changes to source dpkg-buildpackage: error: dpkg-source -b bluelog gave error exit status 2

    Read the article

  • Remote Desktop connection repeatedly aborting

    - by DerKlaus
    I connect to my workplace computer using Remote Desktop. After 1-2 minutes the application freezes to tell me after one more minute that the connection was aborted. It then reconnects. Everything works again for 1-2 minutes. Then the process repeats. Probably Forever. My coworkers do not experience such problems when connecting to the workplace. My workplace computer: Windows 7 32bit My home computer: Windows 7 64bit connected to the internet via WLAN-router with integrated ADSL modem (Linksys WAG200G) Things I already tried to fix the problem: disabled the Windows firewall disabled the other firewall reduced the MTU upgraded the firmware on the router configured port-forwarding to forward all packets to my home computer The problem remains unchanged. What could be the cause of the connection aborts? What else can I try to fix the connection? Thanks in advance.

    Read the article

  • Check_webinject plugin will not connect to https site using

    - by uSlackr
    We're using Nagios to monitor some of our web sites. We have a script that uses the older plugin that we are trying to switch to using webinject.pl from cpan. When the script runs, it generates this error: LWP::Protocol::https::Socket: SSL connect attempt failed with unknown error error:1407741A:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert decode error at /usr/local/share/perl5/LWP/Protocol/http.pm line 51. It appears the web site does not support TLSv1 for https. If it matters, the site is a Cisco WebVPN. I've pointed the same script at a different site that does support TLSv1 and it seems to work fine. My web search is coming up empty. Successful connect: <case id="1" description1="Metro Home Page" description2="Metro, login test" method="get" url="https://metro.myco.com/index.php" verifypositive="restricted" logrequest="yes" logresponse="yes" sleep="1" / Failing connect: <case id="2" description1="WebVPN Home Page" description2="webvpn.myco.com login test" method="get" url="https://webvpn.myco.com/webvpn.html" verifypositive="Authorized" logrequest="yes" logresponse="yes" sleep="1" /

    Read the article

  • [MINI HOW-TO] Remove the Search Helper Extension from Firefox

    - by Asian Angel
    If you found a new surprise extension added to Firefox after the June Patch from Microsoft, then you are likely to be rather unhappy right now. Join us as we show you how to remove the Search Helper extension from your browser. An Unexpected Addition to Your Extensions You may be wondering what the new mysterious extension that showed up is for. Its’ purpose is to help the Bing Toolbar better integrate with your browser. Unless you have the Bing Toolbar installed you really do not need this cluttering your browser up. So how do you get rid of it? Removing the Extension In order to remove the extension you will need to navigate to the following location: C:\Program Files\Microsoft\Search Enhancement Pack\Search Helper Once there delete the “firefoxextension folder”…that is all there is to it. If you want to remove the search helper add-on for Internet Explorer then delete the “SEPsearchhelperie.dll file” while you are here. Note: You may need to have administrator rights in order to delete the folder. No more Search Helper Extension! If you are unhappy about this update being snuck into your system, following these instructions will remove it. Microsoft Support Page About Update KB982217 Similar Articles Productive Geek Tips Remove the New Tab Button in FirefoxAdd Search Forms to the Firefox Search BarAdd Notes to Zoho Notebook in FirefoxOrganize Your Firefox Search Engines Into FoldersManually Remove Skype Extension from Firefox TouchFreeze Alternative in AutoHotkey The Icy Undertow Desktop Windows Home Server – Backup to LAN The Clear & Clean Desktop Use This Bookmarklet to Easily Get Albums Use AutoHotkey to Assign a Hotkey to a Specific Window Latest Software Reviews Tinyhacker Random Tips HippoRemote Pro 2.2 Xobni Plus for Outlook All My Movies 5.9 CloudBerry Online Backup 1.5 for Windows Home Server Steve Jobs’ iPhone 4 Keynote Video Watch World Cup Online On These Sites Speed Up Windows With ReadyBoost Awesome World Cup Soccer Calendar Nice Websites To Watch TV Shows Online 24 Million Sites

    Read the article

  • OpenSSH SFTP server with chroot()

    - by HannesFostie
    I am currently setting up an SFTP server but there is one detail I can't seem to figure out. When I add a user, I would like him to connect using his client and be able to write in his "root dir" right away. My Match case for the SFTP-users group currently has ChrootDirectory set as "/home/%u", and inside that directory I have to have a subdirectory owned by the user, while /home/%u itself is owned by root. Next to that, the "root dir" also has a couple files, .bashrc to name one. Is it possible to put these files somewhere else, remove them, or at least make them invisible to the user? Thanks

    Read the article

  • PLesk Error: pmm-ras error (Error code = -6): during restore.. /tmp folder to increase?

    - by eric
    I had to re-install plesk on a centos 6 system after a crash. The full backup file is 11 gb. but at the beginning of the backup reinstall I get the error Error: pmm-ras error (Error code = -6): argh ! my disk organization is like this Filesystem Size Used Avail Use% Mounted on /dev/xvda1 3.7G 801M 2.9G 22% / /dev/mapper/vg00-usr 14G 1.5G 12G 12% /usr /dev/mapper/vg00-var 155G 14G 134G 10% /var /dev/mapper/vg00-home 3.9G 136M 3.6G 4% /home none 1000M 7.5M 993M 1% /tmp I suppose I have to increase my /tmp folder to accept the backup size,but I don't know how-to. I'm on 1&1 cloud server Thanks for your help. You can imagine the emergency of this situation...

    Read the article

  • SSH: Connection Reset by Peer

    - by hopeless
    I have a Solaris 10 server on another network. I can ping it and telnet to it, but ssh doesn't connect. PuTTY log contains nothing of interest (they both negotiate to ssh v2) and then I get "Event Log: Network error: Software caused connection abort". ssh is defintely running: svcs -a | grep ssh online 12:12:04 svc:/network/ssh:default Here's an extract from the server's /var/adm/messages (anonymised) Jun 8 19:51:05 ******* sshd[26391]: [ID 800047 auth.crit] fatal: Read from socket failed: Connection reset by peer However, if I telnet to the box, I can login to ssh locally. I can also ssh to other (non-Solaris) machines on that network fine so I don't believe that it's a network issue (though, since I'm a few hundred miles away, I can't be sure). The server's firewall is disabled, so that shouldn't be a problem root@******** # svcs -a | grep -i ipf disabled Apr_27 svc:/network/ipfilter:default Any ideas what I should start checking? Update: Based on the feedback below, I've run sshd in debug mode. Here's the client output: $ ssh -vvv root@machine -p 32222 OpenSSH_5.0p1, OpenSSL 0.9.8h 28 May 2008 debug2: ssh_connect: needpriv 0 debug1: Connecting to machine [X.X.X.X] port 32222. debug1: Connection established. debug1: identity file /home/lawrencj/.ssh/identity type -1 debug1: identity file /home/lawrencj/.ssh/id_rsa type -1 debug1: identity file /home/lawrencj/.ssh/id_dsa type -1 debug1: Remote protocol version 2.0, remote software version Sun_SSH_1.1 debug1: no match: Sun_SSH_1.1 debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-OpenSSH_5.0 debug2: fd 3 setting O_NONBLOCK debug1: SSH2_MSG_KEXINIT sent Read from socket failed: Connection reset by peer And here's the server output: root@machine # /usr/lib/ssh/sshd -d -p 32222 debug1: sshd version Sun_SSH_1.1 debug1: read PEM private key done: type RSA debug1: private host key: #0 type 1 RSA debug1: read PEM private key done: type DSA debug1: private host key: #1 type 2 DSA debug1: Bind to port 32222 on ::. Server listening on :: port 32222. debug1: Bind to port 32222 on 0.0.0.0. Server listening on 0.0.0.0 port 32222. debug1: Server will not fork when running in debugging mode. Connection from 1.2.3.4 port 2652 debug1: Client protocol version 2.0; client software version OpenSSH_5.0 debug1: match: OpenSSH_5.0 pat OpenSSH* debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-Sun_SSH_1.1 debug1: list_hostkey_types: ssh-rsa,ssh-dss debug1: Failed to acquire GSS-API credentials for any mechanisms (No credentials were supplied, or the credentials were unavailable or inaccessible Unknown code 0 ) debug1: SSH2_MSG_KEXINIT sent Read from socket failed: Connection reset by peer debug1: Calling cleanup 0x4584c(0x0) This line seems a likely candidate: debug1: Failed to acquire GSS-API credentials for any mechanisms (No credentials were supplied, or the credentials were unavailable or inaccessible

    Read the article

  • Critique My Backup and Storage Plan

    - by MetaHyperBolic
    My current storage (RAID-1 off of a hardware RAID card) and backup (a spare drive) solutions for my home network are inadequate. I have too much data scattered on various one-off drives. It is time to evolve. Backups seem simple enough, at least: lots of big drives. However, I am bewildered by the number of choices for small home storage. The Drobo S looks appealing. So does the ReadyNAS. I am not looking for bunches of shiny features, I'm mostly interested in reliability. I am not interested in building Yet Another PC to create a file server or doing something in the cloud, or whatever. I'm stupid, so I am keeping it simple. Requirements for Main Volume: Starting working space roughly 2TB, with options for growth up to 5TB RAID or something RAID-like with at least one parity drive eSATA II for speed during backups Ability to shut down gracefully when alerted of low power by a UPS Optional but Desirable: Will take 2TB drives now with options for the larger 3TB drives coming in 2010-2011 Optional but Desirable: : RAID-6 or something similar, with two parity drives Optional but Desirable: : Hot spare Ethernet connection not required, as the volume will be shared via the same machines which runs my home print server Backups: Backup performed via ROBOCOPY in mirror mode to an external hard drive via a eSATA II connection. Start with rotating between two external 2TB hard drives, will go up to six external 2TB drives. Start with a weekly backup, move to a bi-weekly backup as more drives are added. Move to 3TB drives as the size of my main volume increases. Backup drives will be stored on an off-site location. Hard drives: I plan on buying all of the same model, but different batches from different vendors. I found a "burn-in" utility with which I can pound away on the drives for a couple of weeks before adding them to the backup pool or the main volume. I estimate that I am looking at roughly $1,500 to start, once I start throwing in two TB drives for backup and four for storage. So, are there any obvious flaws in my plan? What have I overlooked? Any suggestions for the storage device for my main volume that fits my requirements? Or do I just keep it simple, 2 drives in RAID-1, then perform due diligence with my backups, accepting that I will have to buy a whole new unit when my data grows past 2TB?

    Read the article

  • PTLQueue : a scalable bounded-capacity MPMC queue

    - by Dave
    Title: Fast concurrent MPMC queue -- I've used the following concurrent queue algorithm enough that it warrants a blog entry. I'll sketch out the design of a fast and scalable multiple-producer multiple-consumer (MPSC) concurrent queue called PTLQueue. The queue has bounded capacity and is implemented via a circular array. Bounded capacity can be a useful property if there's a mismatch between producer rates and consumer rates where an unbounded queue might otherwise result in excessive memory consumption by virtue of the container nodes that -- in some queue implementations -- are used to hold values. A bounded-capacity queue can provide flow control between components. Beware, however, that bounded collections can also result in resource deadlock if abused. The put() and take() operators are partial and wait for the collection to become non-full or non-empty, respectively. Put() and take() do not allocate memory, and are not vulnerable to the ABA pathologies. The PTLQueue algorithm can be implemented equally well in C/C++ and Java. Partial operators are often more convenient than total methods. In many use cases if the preconditions aren't met, there's nothing else useful the thread can do, so it may as well wait via a partial method. An exception is in the case of work-stealing queues where a thief might scan a set of queues from which it could potentially steal. Total methods return ASAP with a success-failure indication. (It's tempting to describe a queue or API as blocking or non-blocking instead of partial or total, but non-blocking is already an overloaded concurrency term. Perhaps waiting/non-waiting or patient/impatient might be better terms). It's also trivial to construct partial operators by busy-waiting via total operators, but such constructs may be less efficient than an operator explicitly and intentionally designed to wait. A PTLQueue instance contains an array of slots, where each slot has volatile Turn and MailBox fields. The array has power-of-two length allowing mod/div operations to be replaced by masking. We assume sensible padding and alignment to reduce the impact of false sharing. (On x86 I recommend 128-byte alignment and padding because of the adjacent-sector prefetch facility). Each queue also has PutCursor and TakeCursor cursor variables, each of which should be sequestered as the sole occupant of a cache line or sector. You can opt to use 64-bit integers if concerned about wrap-around aliasing in the cursor variables. Put(null) is considered illegal, but the caller or implementation can easily check for and convert null to a distinguished non-null proxy value if null happens to be a value you'd like to pass. Take() will accordingly convert the proxy value back to null. An advantage of PTLQueue is that you can use atomic fetch-and-increment for the partial methods. We initialize each slot at index I with (Turn=I, MailBox=null). Both cursors are initially 0. All shared variables are considered "volatile" and atomics such as CAS and AtomicFetchAndIncrement are presumed to have bidirectional fence semantics. Finally T is the templated type. I've sketched out a total tryTake() method below that allows the caller to poll the queue. tryPut() has an analogous construction. Zebra stripping : alternating row colors for nice-looking code listings. See also google code "prettify" : https://code.google.com/p/google-code-prettify/ Prettify is a javascript module that yields the HTML/CSS/JS equivalent of pretty-print. -- pre:nth-child(odd) { background-color:#ff0000; } pre:nth-child(even) { background-color:#0000ff; } border-left: 11px solid #ccc; margin: 1.7em 0 1.7em 0.3em; background-color:#BFB; font-size:12px; line-height:65%; " // PTLQueue : Put(v) : // producer : partial method - waits as necessary assert v != null assert Mask = 1 && (Mask & (Mask+1)) == 0 // Document invariants // doorway step // Obtain a sequence number -- ticket // As a practical concern the ticket value is temporally unique // The ticket also identifies and selects a slot auto tkt = AtomicFetchIncrement (&PutCursor, 1) slot * s = &Slots[tkt & Mask] // waiting phase : // wait for slot's generation to match the tkt value assigned to this put() invocation. // The "generation" is implicitly encoded as the upper bits in the cursor // above those used to specify the index : tkt div (Mask+1) // The generation serves as an epoch number to identify a cohort of threads // accessing disjoint slots while s-Turn != tkt : Pause assert s-MailBox == null s-MailBox = v // deposit and pass message Take() : // consumer : partial method - waits as necessary auto tkt = AtomicFetchIncrement (&TakeCursor,1) slot * s = &Slots[tkt & Mask] // 2-stage waiting : // First wait for turn for our generation // Acquire exclusive "take" access to slot's MailBox field // Then wait for the slot to become occupied while s-Turn != tkt : Pause // Concurrency in this section of code is now reduced to just 1 producer thread // vs 1 consumer thread. // For a given queue and slot, there will be most one Take() operation running // in this section. // Consumer waits for producer to arrive and make slot non-empty // Extract message; clear mailbox; advance Turn indicator // We have an obvious happens-before relation : // Put(m) happens-before corresponding Take() that returns that same "m" for T v = s-MailBox if v != null : s-MailBox = null ST-ST barrier s-Turn = tkt + Mask + 1 // unlock slot to admit next producer and consumer return v Pause tryTake() : // total method - returns ASAP with failure indication for auto tkt = TakeCursor slot * s = &Slots[tkt & Mask] if s-Turn != tkt : return null T v = s-MailBox // presumptive return value if v == null : return null // ratify tkt and v values and commit by advancing cursor if CAS (&TakeCursor, tkt, tkt+1) != tkt : continue s-MailBox = null ST-ST barrier s-Turn = tkt + Mask + 1 return v The basic idea derives from the Partitioned Ticket Lock "PTL" (US20120240126-A1) and the MultiLane Concurrent Bag (US8689237). The latter is essentially a circular ring-buffer where the elements themselves are queues or concurrent collections. You can think of the PTLQueue as a partitioned ticket lock "PTL" augmented to pass values from lock to unlock via the slots. Alternatively, you could conceptualize of PTLQueue as a degenerate MultiLane bag where each slot or "lane" consists of a simple single-word MailBox instead of a general queue. Each lane in PTLQueue also has a private Turn field which acts like the Turn (Grant) variables found in PTL. Turn enforces strict FIFO ordering and restricts concurrency on the slot mailbox field to at most one simultaneous put() and take() operation. PTL uses a single "ticket" variable and per-slot Turn (grant) fields while MultiLane has distinct PutCursor and TakeCursor cursors and abstract per-slot sub-queues. Both PTL and MultiLane advance their cursor and ticket variables with atomic fetch-and-increment. PTLQueue borrows from both PTL and MultiLane and has distinct put and take cursors and per-slot Turn fields. Instead of a per-slot queues, PTLQueue uses a simple single-word MailBox field. PutCursor and TakeCursor act like a pair of ticket locks, conferring "put" and "take" access to a given slot. PutCursor, for instance, assigns an incoming put() request to a slot and serves as a PTL "Ticket" to acquire "put" permission to that slot's MailBox field. To better explain the operation of PTLQueue we deconstruct the operation of put() and take() as follows. Put() first increments PutCursor obtaining a new unique ticket. That ticket value also identifies a slot. Put() next waits for that slot's Turn field to match that ticket value. This is tantamount to using a PTL to acquire "put" permission on the slot's MailBox field. Finally, having obtained exclusive "put" permission on the slot, put() stores the message value into the slot's MailBox. Take() similarly advances TakeCursor, identifying a slot, and then acquires and secures "take" permission on a slot by waiting for Turn. Take() then waits for the slot's MailBox to become non-empty, extracts the message, and clears MailBox. Finally, take() advances the slot's Turn field, which releases both "put" and "take" access to the slot's MailBox. Note the asymmetry : put() acquires "put" access to the slot, but take() releases that lock. At any given time, for a given slot in a PTLQueue, at most one thread has "put" access and at most one thread has "take" access. This restricts concurrency from general MPMC to 1-vs-1. We have 2 ticket locks -- one for put() and one for take() -- each with its own "ticket" variable in the form of the corresponding cursor, but they share a single "Grant" egress variable in the form of the slot's Turn variable. Advancing the PutCursor, for instance, serves two purposes. First, we obtain a unique ticket which identifies a slot. Second, incrementing the cursor is the doorway protocol step to acquire the per-slot mutual exclusion "put" lock. The cursors and operations to increment those cursors serve double-duty : slot-selection and ticket assignment for locking the slot's MailBox field. At any given time a slot MailBox field can be in one of the following states: empty with no pending operations -- neutral state; empty with one or more waiting take() operations pending -- deficit; occupied with no pending operations; occupied with one or more waiting put() operations -- surplus; empty with a pending put() or pending put() and take() operations -- transitional; or occupied with a pending take() or pending put() and take() operations -- transitional. The partial put() and take() operators can be implemented with an atomic fetch-and-increment operation, which may confer a performance advantage over a CAS-based loop. In addition we have independent PutCursor and TakeCursor cursors. Critically, a put() operation modifies PutCursor but does not access the TakeCursor and a take() operation modifies the TakeCursor cursor but does not access the PutCursor. This acts to reduce coherence traffic relative to some other queue designs. It's worth noting that slow threads or obstruction in one slot (or "lane") does not impede or obstruct operations in other slots -- this gives us some degree of obstruction isolation. PTLQueue is not lock-free, however. The implementation above is expressed with polite busy-waiting (Pause) but it's trivial to implement per-slot parking and unparking to deschedule waiting threads. It's also easy to convert the queue to a more general deque by replacing the PutCursor and TakeCursor cursors with Left/Front and Right/Back cursors that can move either direction. Specifically, to push and pop from the "left" side of the deque we would decrement and increment the Left cursor, respectively, and to push and pop from the "right" side of the deque we would increment and decrement the Right cursor, respectively. We used a variation of PTLQueue for message passing in our recent OPODIS 2013 paper. ul { list-style:none; padding-left:0; padding:0; margin:0; margin-left:0; } ul#myTagID { padding: 0px; margin: 0px; list-style:none; margin-left:0;} -- -- There's quite a bit of related literature in this area. I'll call out a few relevant references: Wilson's NYU Courant Institute UltraComputer dissertation from 1988 is classic and the canonical starting point : Operating System Data Structures for Shared-Memory MIMD Machines with Fetch-and-Add. Regarding provenance and priority, I think PTLQueue or queues effectively equivalent to PTLQueue have been independently rediscovered a number of times. See CB-Queue and BNPBV, below, for instance. But Wilson's dissertation anticipates the basic idea and seems to predate all the others. Gottlieb et al : Basic Techniques for the Efficient Coordination of Very Large Numbers of Cooperating Sequential Processors Orozco et al : CB-Queue in Toward high-throughput algorithms on many-core architectures which appeared in TACO 2012. Meneghin et al : BNPVB family in Performance evaluation of inter-thread communication mechanisms on multicore/multithreaded architecture Dmitry Vyukov : bounded MPMC queue (highly recommended) Alex Otenko : US8607249 (highly related). John Mellor-Crummey : Concurrent queues: Practical fetch-and-phi algorithms. Technical Report 229, Department of Computer Science, University of Rochester Thomasson : FIFO Distributed Bakery Algorithm (very similar to PTLQueue). Scott and Scherer : Dual Data Structures I'll propose an optimization left as an exercise for the reader. Say we wanted to reduce memory usage by eliminating inter-slot padding. Such padding is usually "dark" memory and otherwise unused and wasted. But eliminating the padding leaves us at risk of increased false sharing. Furthermore lets say it was usually the case that the PutCursor and TakeCursor were numerically close to each other. (That's true in some use cases). We might still reduce false sharing by incrementing the cursors by some value other than 1 that is not trivially small and is coprime with the number of slots. Alternatively, we might increment the cursor by one and mask as usual, resulting in a logical index. We then use that logical index value to index into a permutation table, yielding an effective index for use in the slot array. The permutation table would be constructed so that nearby logical indices would map to more distant effective indices. (Open question: what should that permutation look like? Possibly some perversion of a Gray code or De Bruijn sequence might be suitable). As an aside, say we need to busy-wait for some condition as follows : "while C == 0 : Pause". Lets say that C is usually non-zero, so we typically don't wait. But when C happens to be 0 we'll have to spin for some period, possibly brief. We can arrange for the code to be more machine-friendly with respect to the branch predictors by transforming the loop into : "if C == 0 : for { Pause; if C != 0 : break; }". Critically, we want to restructure the loop so there's one branch that controls entry and another that controls loop exit. A concern is that your compiler or JIT might be clever enough to transform this back to "while C == 0 : Pause". You can sometimes avoid this by inserting a call to a some type of very cheap "opaque" method that the compiler can't elide or reorder. On Solaris, for instance, you could use :"if C == 0 : { gethrtime(); for { Pause; if C != 0 : break; }}". It's worth noting the obvious duality between locks and queues. If you have strict FIFO lock implementation with local spinning and succession by direct handoff such as MCS or CLH,then you can usually transform that lock into a queue. Hidden commentary and annotations - invisible : * And of course there's a well-known duality between queues and locks, but I'll leave that topic for another blog post. * Compare and contrast : PTLQ vs PTL and MultiLane * Equivalent : Turn; seq; sequence; pos; position; ticket * Put = Lock; Deposit Take = identify and reserve slot; wait; extract & clear; unlock * conceptualize : Distinct PutLock and TakeLock implemented as ticket lock or PTL Distinct arrival cursors but share per-slot "Turn" variable provides exclusive role-based access to slot's mailbox field put() acquires exclusive access to a slot for purposes of "deposit" assigns slot round-robin and then acquires deposit access rights/perms to that slot take() acquires exclusive access to slot for purposes of "withdrawal" assigns slot round-robin and then acquires withdrawal access rights/perms to that slot At any given time, only one thread can have withdrawal access to a slot at any given time, only one thread can have deposit access to a slot Permissible for T1 to have deposit access and T2 to simultaneously have withdrawal access * round-robin for the purposes of; role-based; access mode; access role mailslot; mailbox; allocate/assign/identify slot rights; permission; license; access permission; * PTL/Ticket hybrid Asymmetric usage ; owner oblivious lock-unlock pairing K-exclusion add Grant cursor pass message m from lock to unlock via Slots[] array Cursor performs 2 functions : + PTL ticket + Assigns request to slot in round-robin fashion Deconstruct protocol : explication put() : allocate slot in round-robin fashion acquire PTL for "put" access store message into slot associated with PTL index take() : Acquire PTL for "take" access // doorway step seq = fetchAdd (&Grant, 1) s = &Slots[seq & Mask] // waiting phase while s-Turn != seq : pause Extract : wait for s-mailbox to be full v = s-mailbox s-mailbox = null Release PTL for both "put" and "take" access s-Turn = seq + Mask + 1 * Slot round-robin assignment and lock "doorway" protocol leverage the same cursor and FetchAdd operation on that cursor FetchAdd (&Cursor,1) + round-robin slot assignment and dispersal + PTL/ticket lock "doorway" step waiting phase is via "Turn" field in slot * PTLQueue uses 2 cursors -- put and take. Acquire "put" access to slot via PTL-like lock Acquire "take" access to slot via PTL-like lock 2 locks : put and take -- at most one thread can access slot's mailbox Both locks use same "turn" field Like multilane : 2 cursors : put and take slot is simple 1-capacity mailbox instead of queue Borrow per-slot turn/grant from PTL Provides strict FIFO Lock slot : put-vs-put take-vs-take at most one put accesses slot at any one time at most one put accesses take at any one time reduction to 1-vs-1 instead of N-vs-M concurrency Per slot locks for put/take Release put/take by advancing turn * is instrumental in ... * P-V Semaphore vs lock vs K-exclusion * See also : FastQueues-excerpt.java dice-etc/queue-mpmc-bounded-blocking-circular-xadd/ * PTLQueue is the same as PTLQB - identical * Expedient return; ASAP; prompt; immediately * Lamport's Bakery algorithm : doorway step then waiting phase Threads arriving at doorway obtain a unique ticket number Threads enter in ticket order * In the terminology of Reed and Kanodia a ticket lock corresponds to the busy-wait implementation of a semaphore using an eventcount and a sequencer It can also be thought of as an optimization of Lamport's bakery lock was designed for fault-tolerance rather than performance Instead of spinning on the release counter, processors using a bakery lock repeatedly examine the tickets of their peers --

    Read the article

  • Best way to restore individual folders via Time Machine after clean Lion install?

    - by A4J
    I'm doing a clean erase and install of Lion, and am looking for the best way to restore individual folders into my home directory via Time Machine. I've done a dummy run, clean Lion install, then 'browse other disks' in Time Machine, navigate to my home folder and 'restore' what I need, such as pictures/music and folders inside the .library folder (such as Mail and Keychains). However this method seems to give you odd permissions, like this: http://i43.tinypic.com/15y82v4.png Hence I wondered if anyone knows what the best method is to restore files and folders after a clean install. N.b I do not want to use the migration assistant, or 'restore OS from Time Machine' - as I specifically want to do a clean install, and just copy over what I need (some folders will be moved onto a separate disk to the OS, and some will remain on the same disk). Thanks in advance.

    Read the article

  • Ubuntu to Ubuntu VNC over SSH tunnel

    - by rxt
    I have a Linux Ubuntu desktop at home, ssh enabled, vnc server installed, router rule configured. It all works, and at home I can connect via the local network from my Mac. From the outside I can login via ssh. I've configured putty as follows: session: host name and port number connection ssh tunnel: forwarded ports: L5900|192.168.0.23 the local address is: 192.168.1.45 When I make the connection I can login to the remote machine. Then I open Remote Desktop Viewer. I click connect protocol: vnc host: ? use host as ssh tunnel: ? I don't know what to use for the last two options. Which ip-addresses should I use?

    Read the article

  • Where can I buy freely redistributable (creative commons) game assets?

    - by Erlend
    I'd like to know about any 3D asset shops out there that specialize in game assets and, most importantly, license their assets under an open license like Creative Commons or similarly permissive. We are looking to buy some professional looking assets for use and redistribution with our open source 3D game engine. The problem is that all the commercial 3D assets we've come by are only sold under very restrictive licenses, which won't allow us to include the models in our code repository (since free code hosting repositories require that all your data, including media, is open source or otherwise copyleft) nor in turn redistribute the assets as part of our downloadable SDK. I realize this sounds like a weak business idea, since users could just buy the asset and start sharing it with everyone. But somehow this has worked for hundreds of WordPress theme shops, so I was hoping maybe someone's trying similar things for commercial game assets.

    Read the article

  • How to disallow use of disable_functions in?

    - by Gaia
    I'm obviously not the first one to have this problem, but I cannot not find an answer to this situation. I want to lock down PHP a bit, more specifically the use disable_functions. The environment is CentOS 6.2/PHP 5.3.3 fcgid/Apache 2.2.15: Whats the proper apache config (AllowOverride, etc) to disable any PHP setting to be changed via .htaccess? All other overrides are ok (current setting is AllowOverride All) Whats the proper config to forbid effective use of disable_functions in all but the master php.ini (as in forbid use of disable_functions in /home/myvhost/etc/php5/php.ini or any directory within in that vhost public_html. another way to say this: the only effective disable_functions comes from the master php.ini)? If #2 is not possible, at least whats the proper config to disallow a vhost owner to effectively use any php.ini but the vhost main one (/home/myvhost/etc/php5/php.ini)? Thanks

    Read the article

  • How should I remotely manage Dell Poweredge 2850 running Ubuntu server?

    - by Saul
    First I've got to say I'm a Linux / Ubuntu novice, so go gentle on me as I'm on day 3. I've managed to get Ubuntu server Ubuntu 8.04 LTS installed and running on the Poweredge 1850 I bought off ebay. The box will go in a rack at my office but I want to be able to work on it and power on and off from home and I gather that (maybe) IPMI over LAN might be the way to do this, or maybe its something to do with BMC or something? I want to be able to administer/manage from a client PC at home running XP. I will be configuring the office router to port forward port 80 and 443 to the Ubuntu server running Apache2, and I'm puzzled about how the remote management works (unless it comes on a different port forwarded to a different internal IP) Thanks for any help

    Read the article

  • Apache2 Doesn't Serve Subdomain Alias

    - by Cyle Hunter
    I'm trying to prefix an existing Rails application with a sub-domain, essentially I want the sub-domain to serve the same application. Right now apache2 serves my application with "www.example.com" or "example.com". I adjusted my sites-available virtualhost in hopes of allowing for "foo.example.com" or "www.foo.example.com" however both instances are met with a domain not found error. Here is my current VirtualHost in /etc/apache2/sites-available/example.com: <VirtualHost *:80> ServerName example.com ServerAlias foo.example.com *.example.com www.foo.example.com www.example.com DocumentRoot /home/user/my_app/public <Directory /home/user/my_app/public> AllowOverride all Options -MultiViews </Directory> </VirtualHost> Any ideas? Note, I realized I probably don't need a wild card sub-domain for what I'm trying to do, I simply added that in as a last-ditch effort. Edit: The actual domain is virtualrobotgames.com with the desired subdomain being roboteer.virtualrobotgames.com

    Read the article

  • Using FTP to update files on a server

    - by Neville
    I know the FTP username and password for a site we own and need to know how we can update some files on the server. It seems quite a small thing to do and I'd like to have a go at doing it myself. A few years ago a friendly local guy help set up a website for my wife's floristry business. The site has a "contact us" page, and messages are forwarded to our home email address. We've now just changed our home email, and so I now need to reset the forwarding function on the website. The helpful local guy seems to have moved away, or retired - there's no way I can find him now. I tried to get help on how to change the forwarding address from the hosting people, but they say they can't help me. How do I go about updating the pages on the site? A step-by-step guide on how to do it would be great.

    Read the article

  • ACE a Session at Oracle OpenWorld

    - by Oracle OpenWorld Blog Team
    By Bob Rhubart Oracle ACE Sessions at Oracle OpenWorldAs you're finalizing your Oracle OpenWorld travel plans and taking advantage of Schedule Builder to plan your week in San Francisco, make sure you add some Oracle ACE sessions to your schedule."What's an Oracle ACE?" you ask. Members of the Oracle ACE Program are the most active members of the Oracle community, frequently sharing their substantial insights and real-world expertise with Oracle technologies through articles, blogs, social networks, and as presenters at Oracle OpenWorld and other events.With so many great sessions at this year's event, building your schedule can involve making a lot of tough choices. But you'll find that the sessions led by Oracle ACEs will be the icing on the cake of your Oracle OpenWorld content experience.To see a full list of Oracle ACE sessions at Oracle OpenWorld and other Oracle conferences that same week, check out this blog post that lists them all.

    Read the article

  • Gateway ZA8 Netbook graphics Issue

    - by Hansel
    The graphics keep tearing and are barely usable anytime I try to use my Netbook. And I did a full install with Ubuntu so I'm pretty much stuck. These are the specs of the Netbook: Processor AMD Athlon™ 64 L110 Single-Core Processor (1.2GHz, 800MHz FSB, 512KB L2 Cache)6 Operating System Genuine Windows Vista® Home Basic (32-bit) with SP1 Display 11.6" HD WXGA Ultrabright™ LED-backlit Display (1366 x 768 resolution, 16:9 aspect ratio)7 Memory 2048MB DDR2 533MHz SDRAM Single Channel Memory8 Hard Drive 250GB SATA hard drive2 Color Classic and Elegant Design with Cherry Red finish Wireless Network 802.11b/g Wi-Fi CERTIFIED®3 Adapter AC Adapter Application Software Microsoft® Works, Microsoft® Money Essentials, Microsoft® Office Home and Student 2007 (60-day complimentary trial period)1 Battery 6-Cell Lithium Ion (5200mAh) Chassis Chassis with ATI Radeon® X1270 Graphics and AMD RS690E Chipset8 Dimensions (Box) 3.1" (H) x 14.8" (W) x 10.1" (D) or 80mm (H) x 376mm (W) x 256mm (D) Dimensions (System) 1.03" (H) x 11.26" (W) x 7.99" (D) or 26.4mm (H) x 286mm (W) x 203mm (D) External Ports (3) USB 2.0, VGA Connector Keyboard and Mouse Keyboard with Multi-Gesture Touchpad Media Card Reader Multi-in-1 Digital Media Card Reader (Memory Stick®, Memory Stick Pro™, MultiMediaCard, Secure Digital™, xD-Picture Card™) Network 10/100 Ethernet LAN (RJ-45 port) What can I do?

    Read the article

  • Managing .NET External Dependencies

    - by Ben Griswold
    Noah and I continue our screencast series by sharing our approach to managing external dependencies referenced within a .NET solution.  This is another introductory episode but you might find a hidden gem in the short 4-minute clip.  ELMAH (Error Logging Modules and Handlers) is the external dependencies we are focusing on in the presentation.  If you are not familiar with ELMAH, this episode may be worth your time.   YouTube - Managing .NET External Dependencies This is one of our first screencasts.  If you have feedback, I’d love to hear it.

    Read the article

< Previous Page | 210 211 212 213 214 215 216 217 218 219 220 221  | Next Page >